国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Android adb命令獲取當(dāng)前Activity或者Fragment

這篇具有很好參考價值的文章主要介紹了Android adb命令獲取當(dāng)前Activity或者Fragment。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

用adb命令查看下面Demo處于NO.3 Fragment時的ActivityFragment信息。
安卓獲取當(dāng)前activity工具,Android技術(shù)筆記,android,adb,android studio

查看當(dāng)前Activity及其包名

adb shell "dumpsys window | grep mCurrentFocus"

輸出結(jié)果如下:

mCurrentFocus=Window{b1deab4 u0 com.example.who/com.example.who.ui.activity.SecondActivity}

上面的com.example.who/com.example.who.ui.activity.SecondActivity}可以分成兩部分看:/前的部分是包名,/后的部分是當(dāng)前Activity的類全名。

查看全部窗口信息

adb shell dumpsys window windows |grep "Window #"

該命令會輸出堆棧中全部的窗口信息。
輸出結(jié)果如下,SecondActivity即為最上層的Activity

安卓獲取當(dāng)前activity工具,Android技術(shù)筆記,android,adb,android studio

查看當(dāng)前Fragment

adb shell dumpsys activity your.package.name > yourPath\Fragment.txt
可以先通過adb shell "dumpsys window | grep mCurrentFocus"查詢出應(yīng)用包名,再執(zhí)行上面的命令即可。

打開Fragment.txt,我們可以在開頭看到如下內(nèi)容:

TASK com.example.who id=655 userId=0
  ACTIVITY com.example.who/.ui.activity.SecondActivity 49341c pid=4339
    Local Activity cb4da6d State:
      mResumed=true mStopped=false mFinished=false

其中cb4da6d是當(dāng)前Activityhashcode。我們搜索它在Fragment.txt中的位置,可以看到如下內(nèi)容。

	Line 3:     Local Activity cb4da6d State:
	Line 81:       context: com.example.who.ui.activity.SecondActivity@cb4da6d
	Line 82:       client: com.example.who.ui.activity.SecondActivity@cb4da6d (android.os.BinderProxy@292ac31)
	Line 105:     Local FragmentActivity cb4da6d State:

跳轉(zhuǎn)到Local FragmentActivity cb4da6d State所在位置,然后繼續(xù)往下看??梢钥吹?code>Added Fragments。它列出了當(dāng)前Fragment堆棧中的全部Fragment。

如果Demo第二頁切換Fragment時使用add方法:

fragmentTransaction.add(R.id.container_fragment, mOneFragment, "OneFragmentTag");

fragmentTransaction.add(R.id.container_fragment, mTwoFragment, "TwoFragmentTag");

fragmentTransaction.add(R.id.container_fragment, mThreeFragment, "ThreeFragmentTag");

可以看到Added Fragments如下:

    Added Fragments:
      #0: OneFragment{c7ccdff (3e703195-7911-4c26-a36f-f14ee357c797) id=0x7f070055 OneFragmentTag}
      #1: TwoFragment{24e01a0 (b71c641a-6bf6-44d2-b01d-62f2c618136a) id=0x7f070055 TwoFragmentTag}
      #2: ThreeFragment{231b634 (d81580b3-ece9-48f7-b697-54f01c52a782) id=0x7f070055 ThreeFragmentTag}

如果Demo第二頁切換Fragment時使用replace方法:

fragmentTransaction.replace(R.id.container_fragment, mOneFragment, "OneFragmentTag");

fragmentTransaction.replace(R.id.container_fragment, mTwoFragment, "TwoFragmentTag");

fragmentTransaction.replace(R.id.container_fragment, mThreeFragment, "ThreeFragmentTag");

可以看到Added Fragments如下:

    Added Fragments:
      #0: ThreeFragment{6e72f21 (f6e3fc39-c6e1-43ab-8914-a56c85425092) id=0x7f070055 ThreeFragmentTag}

如果在執(zhí)行fragmentTransaction.commit();之前有執(zhí)行addToBackStack方法,如下所示:

        fragmentTransaction.replace(R.id.container_fragment, mOneFragment, "OneFragmentTag");
        fragmentTransaction.addToBackStack("replaceOne");
        fragmentTransaction.commit();

那么我們還將看到Back StackBack Stack Indices,并從中看到回退棧的信息:文章來源地址http://www.zghlxwxcb.cn/news/detail-554626.html

    Back Stack:
      #0: BackStackEntry{ce9e8a6 #0 replaceOne}
        mName=replaceOne mIndex=0 mCommitted=true
        Operations:
          Op #0: ADD OneFragment{3208bfc (09d07dcf-16fb-4e3d-84f2-87edc2de520d) id=0x7f070055 OneFragmentTag}
      #1: BackStackEntry{aded2e7 #1 replaceTwo}
        mName=replaceTwo mIndex=1 mCommitted=true
        Operations:
          Op #0: REMOVE OneFragment{3208bfc (09d07dcf-16fb-4e3d-84f2-87edc2de520d) id=0x7f070055 OneFragmentTag}
          Op #1: ADD TwoFragment{5fd0293 (5f60c66a-1171-4c6a-bbca-d43abb76bd02) id=0x7f070055 TwoFragmentTag}
      #2: BackStackEntry{acc5e94 #2 replaceThree}
        mName=replaceThree mIndex=2 mCommitted=true
        Operations:
          Op #0: REMOVE TwoFragment{5fd0293 (5f60c66a-1171-4c6a-bbca-d43abb76bd02) id=0x7f070055 TwoFragmentTag}
          Op #1: ADD ThreeFragment{de0310b (efd3eb6b-1e6a-466f-bb87-f039024911cd) id=0x7f070055 ThreeFragmentTag}
    Back Stack Indices:
      #0: BackStackEntry{ce9e8a6 #0 replaceOne}
      #1: BackStackEntry{aded2e7 #1 replaceTwo}
      #2: BackStackEntry{acc5e94 #2 replaceThree}

到了這里,關(guān)于Android adb命令獲取當(dāng)前Activity或者Fragment的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 【Android】怎么使用一個ViewModel用在多個Activity或者Fragment中

    項目需求 在多個Activity或者Fragment中使用同一個ViewModel 需求實現(xiàn) 1.使用ActivityScope或FragmentScope 想在一個Activity或Fragment中共享ViewModel實例,可以使用ActivityScope或FragmentScope。這兩種范圍會根據(jù)它們所綁定的Activity或Fragment自動管理ViewModel實例的生命周期。 例如,創(chuàng)建一個繼承自

    2024年02月15日
    瀏覽(18)
  • Android Activity和Fragment的對比

    Android Activity和Fragment的對比

    參考來源 參考來源 參考來源 onAttach() 作用:fragment已經(jīng)關(guān)聯(lián)到activity,這個時候 activity已經(jīng)傳進來了, 獲得activity的傳遞的值 就可以進行 與activity的通信里, 當(dāng)然也可以使用getActivity(),前提是這個fragment已經(jīng)和宿主的activity關(guān)聯(lián),并且沒有脫離,有且只有調(diào)用一次。 onCreate(

    2024年02月11日
    瀏覽(22)
  • Android Fragment跳轉(zhuǎn)到Activity的方法

    一開始我直接按照Activity頁面之間跳轉(zhuǎn)的方法進行的跳轉(zhuǎn),就是在xml文件中給相應(yīng)的組件onClick 在網(wǎng)上查詢到的好像都是下面這種 但是我在Fragment的Java文件中用到這個并不能實現(xiàn)預(yù)想的效果。 在多次嘗試后我直接在Fragment所嵌入的Activity的Java文件中添加了以下代碼,實現(xiàn)了跳

    2023年04月25日
    瀏覽(32)
  • Android 獲取奔潰crash的日志(adb logcat或者dropbox)

    Android 獲取奔潰crash的日志(adb logcat或者dropbox)

    1.通過adb logcat 來獲取 : 使用場景 :測試或者開發(fā)小伙伴 抓取。 先執(zhí)行 adb logcat -c 清理緩存日志 接著,抓取當(dāng)前時間段開始的日志: adb logcat -v time D:/crash.log 也可以抓取指定進程的日志: adb logcat -v time | find \\\"com.xxx\\\" D:/crash.log 其中 -v 和 time 是指log的v級別日志,也可用w 警告

    2024年02月08日
    瀏覽(21)
  • Android:單Activity多Fragment,Navigation實現(xiàn)Fragment跳轉(zhuǎn),F(xiàn)ragment之間通過ViewModel共享數(shù)據(jù)

    Android:單Activity多Fragment,Navigation實現(xiàn)Fragment跳轉(zhuǎn),F(xiàn)ragment之間通過ViewModel共享數(shù)據(jù)

    1、activity_main.xml 2、MainActivity FragmentA:包括SeekBar和一個按鈕,點擊button跳轉(zhuǎn)到FragmentB FragmentB:SeekBar加一和減一操作的按鈕,一個返回FragmentA的按鈕,即經(jīng)過加減操作以后,在FragmentA上顯示加減的結(jié)果。 nav_graph.xml 1、fragment_home.xml 2、HomeFragment 1、fragment_detail.xml 2、DetailFragm

    2023年04月08日
    瀏覽(25)
  • Flutter 和 Android原生(Activity、Fragment)相互跳轉(zhuǎn)、傳參

    Flutter 和 Android原生(Activity、Fragment)相互跳轉(zhuǎn)、傳參

    本文主要講解 Flutter 和 Android原生之間,頁面相互跳轉(zhuǎn)、傳參, 但其中用到了 兩端相互通信 的知識, 非常建議 先看完這篇 講解通信的文章 : Flutter 與 Android原生 相互通信:BasicMessageChannel、MethodChannel、EventChannel_flutter eventchannel methodchannel basemessagechan-CSDN博客 當(dāng)前案例 Flu

    2024年02月22日
    瀏覽(29)
  • 使用ADB命令查詢Android設(shè)備的安卓版本信息

    確保你已經(jīng)安裝了ADB并將其添加到系統(tǒng)的路徑中。 連接你的Android設(shè)備到計算機,并確保啟用了開發(fā)者選項和USB調(diào)試模式。你可以在設(shè)備的設(shè)置中找到這些選項。 打開終端(命令提示符或終端窗口)。 運行以下ADB命令來獲取Android設(shè)備的安卓版本信息: 如果你希望獲得更詳細

    2024年02月08日
    瀏覽(27)
  • uniapp - [安卓|蘋果]實現(xiàn)App端引入高德地圖,詳細獲取當(dāng)前用戶手機定位、兩個地點的路線規(guī)劃及相關(guān)示例代碼,uniapp安卓Android平臺軟件下使用高德地圖,獲取當(dāng)前位置信息及規(guī)劃路線

    uniapp - [安卓|蘋果]實現(xiàn)App端引入高德地圖,詳細獲取當(dāng)前用戶手機定位、兩個地點的路線規(guī)劃及相關(guān)示例代碼,uniapp安卓Android平臺軟件下使用高德地圖,獲取當(dāng)前位置信息及規(guī)劃路線

    在uniapp安卓app端 | 蘋果app端開發(fā)中,詳細完成APP端引入使用高德地圖插件,提供可直接復(fù)制的示例,例如獲取當(dāng)前定位及取到當(dāng)前城市位置信息,規(guī)劃兩個位置的路線(規(guī)劃城市2個點的路線軌跡及在地圖上顯示)等示例。 新手跟著教程一步步來,輕松實現(xiàn)此功能。 首先,

    2024年02月22日
    瀏覽(196)
  • android通過adb命令獲取boot.img鏡像

    android通過adb命令獲取boot.img鏡像

    當(dāng)前系統(tǒng)支持雙分區(qū),區(qū)a分區(qū)boot_a.img如下: 取boot.img 取出來后通過fastboot方式刷機: 參考博客: ?Android手機如何提取系統(tǒng)內(nèi)核(boot.img鏡像文件提取)_Mintimate的博客-CSDN博客_安卓boot.img提取

    2024年02月13日
    瀏覽(22)
  • 使用adb命令獲取Android SurfaceView 的 幀率(fps)jank,手機的基本信息

    ????????adb shell dumpsys SurfaceFlinger | grep + 包名啟動頁 (不然他獲取的數(shù)據(jù)是只有一行數(shù)據(jù)),這個命令只需要執(zhí)行一次 ??????? 使用的是adb shell dumpsys SurfaceFlinger --latency \\\"SurfaceView +包名/啟動頁\\\"獲取的,目前只支持安卓6.0以上。 ??????? 使用adb 命令時,可以根據(jù)他的

    2023年04月19日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包