本文介绍一种安卓卸载系统应用的方法,如果你和我一样喜欢瞎折腾,有那么一点强迫症,希望对你有用。作为一名安卓开发者,大学以前总喜欢刷不同刷机包(ROM)、爱装不同的Launcher桌面体验,不过工作了没以前爱折腾了。安卓提供的adb工具不用多介绍,网上都有很多教程。
一. 实验条件
- LG V30 (Android 9.0)
- 较新adb驱动
- PC一台
- 对应的USB调试线一根
二. 安装adb驱动
下载360手机助手,安装USB连接手机,360手机助手对手机adb驱动支持很好,直接连接就好了。确定adb驱动安装好后,任务管理器将360Mobile相关的进程干掉。重新连接adb,最后使用cmd或者AS自带的Terminal进入命令行,熟悉我们的adb命令就行了。
三. adb卸载预装应用步骤
1、查看adb版本
确认adb版本较新,我自己亲自试了在自己笔记本电脑adb工具执行命令用不了,总是提示如下打印:
F:\mypc>adb devices
adb server is out of date. killing…
daemon started successfully *
List of devices attached
810e909e offline
尝试了网上的方法,还是没有解决,但想到公司电脑好像没有问题的。于是对比了两台电脑adb的版本,还是存在差异,或许是adb安装路径有问题!
F:\mypc>adb version
Android Debug Bridge version 1.0.29
E:\other>adb version
Android Debug Bridge version 1.0.41
Version 29.0.1-5644136
Installed as C:\Windows\system32\adb.exe
2、查看系统中所有包
执行下面命令,将打印复制到记事本中,方便后面查找。
adb shell pm list packages
3、确认不知名的应用包名(较低安卓版本可直接查看应用包名)
有的应用我们可以通过包名就可以判断哪一个应用,但有的应用我们是确定不了的。那么就需要确认当前运行的应用的包名,记住安卓Activity和Application packagename是有关系的!好几种方法,一种不行尝试另外一种哦。
法一:
1、在手机上打开app
2、执行:adb shell dumpsys window w |findstr / |findstr name=
法二:
1、在手机上打开app
2、执行:adb shell dumpsys activity activities
3、分析打印
执行:adb shell dumpsys activity activities 后,我拿到的打印如下,具体分析我们就知道包名和应用名是哪一个了。这条命令会将activity堆栈信息和活动信息告诉我们。
D:\other>adb shell dumpsys activity activities
ACTIVITY MANAGER ACTIVITIES (dumpsys activity activities)
Display #0 (activities from top to bottom):
Stack #102: type=standard mode=fullscreen
isSleeping=false
mBounds=Rect(0, 0 - 0, 0)
Task id #3162
mBounds=Rect(0, 0 - 0, 0)
mMinWidth=-1
mMinHeight=-1
mLastNonFullscreenBounds=null
* TaskRecord{5546a0e #3162 A=com.uplus.onphone U=0 StackId=102 sz=1}
userId=0 effectiveUid=u0a265 mCallingUid=u0a121 mUserSetupComplete=true mCallingPackage=com.lge.launcher3
affinity=com.uplus.onphone
intent={act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.uplus.onphone/.activity.MainActivity}
realActivity=com.uplus.onphone/.activity.MainActivity
autoRemoveRecents=false isPersistable=true numFullscreen=1 activityType=1
rootWasReset=true mNeverRelinquishIdentity=true mReuseTask=false mLockTaskAuth=LOCK_TASK_AUTH_PINNABLE
Activities=[ActivityRecord{64b2438 u0 com.uplus.onphone/.activity.MainActivity t3162}]
askedCompatMode=false inRecents=true isAvailable=true
mRootProcess=ProcessRecord{d749b7 25828:com.uplus.onphone/u0a265}
stackId=102
hasBeenVisible=true mResizeMode=RESIZE_MODE_RESIZEABLE mSupportsPictureInPicture=false isResizeable=true lastActiveTime=95850170 (inactive for 12s)
* Hist #0: ActivityRecord{64b2438 u0 com.uplus.onphone/.activity.MainActivity t3162}
packageName=com.uplus.onphone processName=com.uplus.onphone
launchedFromUid=10121 launchedFromPackage=com.lge.launcher3 userId=0
app=ProcessRecord{d749b7 25828:com.uplus.onphone/u0a265}
Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.uplus.onphone/.activity.MainActivity bnds=[312,1214][584,1665] (has
extras) }
frontOfTask=true task=TaskRecord{5546a0e #3162 A=com.uplus.onphone U=0 StackId=102 sz=1}
taskAffinity=com.uplus.onphone
realActivity=com.uplus.onphone/.activity.MainActivity
baseDir=/system/product/app/UplusTVonPhone/UplusTVonPhone.apk
dataDir=/data/user/0/com.uplus.onphone
stateNotNeeded=false componentSpecified=true mActivityType=standard
compat={640dpi, } labelRes=0x7f12002d icon=0x7f0f0002 theme=0x7f13000a
mLastReportedConfigurations:
mGlobalConfig={1.0 460mcc1mnc [zh_CN_#Hans,en_US,zh_CN] ldltr sw360dp w360dp h654dp 640dpi nrml long hdr port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 27
12, 1440) mAppBounds=Rect(0, 0 - 1440, 2712) mWindowingMode=fullscreen mActivityType=undefined} s.45 fontTypeIndex0 forceEmbolden0}
mOverrideConfig={1.0 460mcc1mnc [zh_CN_#Hans,en_US,zh_CN] ldltr sw360dp w360dp h654dp 640dpi nrml long hdr port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 -
1440, 2712) mAppBounds=Rect(0, 0 - 1440, 2712) mWindowingMode=fullscreen mActivityType=standard} s.45 fontTypeIndex0 forceEmbolden0}
CurrentConfiguration={1.0 460mcc1mnc [zh_CN_#Hans,en_US,zh_CN] ldltr sw360dp w360dp h654dp 640dpi nrml long hdr port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0,
0 - 1440, 2712) mAppBounds=Rect(0, 0 - 1440, 2712) mWindowingMode=fullscreen mActivityType=standard} s.45 fontTypeIndex0 forceEmbolden0}
taskDescription: label=“null” icon=null iconResource=0 iconFilename=null primaryColor=ffffffff
backgroundColor=fffafafa
statusBarColor=ff000000
navigationBarColor=ff000000
launchFailed=false launchCount=1 lastLaunchTime=-2m33s40ms
haveState=false icicle=null
state=RESUMED stopped=false delayedResume=false finishing=false focused=true
keysPaused=false inHistory=true visible=true sleeping=false idle=true mStartingWindowState=STARTING_WINDOW_REMOVED
fullscreen=true noDisplay=false immersive=false launchMode=0
frozenBeforeDestroy=false forceNewConfig=false
mActivityType=standard
waitingVisible=false nowVisible=true lastVisibleTime=-12s404ms
connections=[ConnectionRecord{b2a7614 u0 CR com.uplus.onphone/.player.PopupPlayer:@b109867}]
resizeMode=RESIZE_MODE_RESIZEABLE
mLastReportedMultiWindowMode=false mLastReportedPictureInPictureMode=false
translucent=false
Running activities (most recent first):
TaskRecord{5546a0e #3162 A=com.uplus.onphone U=0 StackId=102 sz=1}
Run #0: ActivityRecord{64b2438 u0 com.uplus.onphone/.activity.MainActivity t3162}
mResumedActivity: ActivityRecord{64b2438 u0 com.uplus.onphone/.activity.MainActivity t3162}
mLastPausedActivity: ActivityRecord{64b2438 u0 com.uplus.onphone/.activity.MainActivity t3162}
Stack #0: type=home mode=fullscreen
isSleeping=false
mBounds=Rect(0, 0 - 0, 0)
法三:
1、手机打开应用
2、执行:adb shell dumpsys activity top
linux: adb shell dumpsys activity | grep “mFocusedActivity”
windows: adb shell dumpsys activity | findstr “mFocusedActivity”
这种方法和法二类似,但仔细看一下下面的打印太恐怖了。我打印了安卓Launcher桌面活动信息,居然什么都暴露了,我擦谷歌爸爸太强大了!
D:\other>adb shell dumpsys activity top
TASK com.android.systemui id=3064 userId=0
ACTIVITY com.android.systemui/.recents.RecentsActivity 1c13a90 pid=2533
Local Activity ca56c1a State:
mResumed=false mStopped=true mFinished=false
mChangingConfigurations=false
mCurrentConfig={1.0 460mcc1mnc [zh_CN_#Hans,en_US,zh_CN] ldltr sw360dp w360dp h654dp 640dpi nrml long hdr port finger -keyb/v/h -nav/h winConfig={ mBounds=Rect(0, 0 - 2712,1440) mAppBounds=Rect(0, 0 - 1440, 2712) mWindowingMode=fullscreen mActivityType=recents} s.45 fontTypeIndex0 forceEmbolden0}
mLoadersStarted=true
FragmentManager misc state:
mHost=android.app.Activity H o s t C a l l b a c k s @ d f 5 b 1 f e m C o n t a i n e r = a n d r o i d . a p p . A c t i v i t y HostCallbacks@df5b1fe mContainer=android.app.Activity HostCallbacks@df5b1femContainer=android.app.ActivityHostCallbacks@df5b1fe
mCurState=3 mStateSaved=true mDestroyed=false
ViewRoot:
mAdded=true mRemoved=false
mConsumeBatchedInputScheduled=false
mConsumeBatchedInputImmediatelyScheduled=false
mPendingInputEventCount=0
mProcessInputEventsScheduled=false
mTraversalScheduled=false mIsAmbientMode=false
android.view.ViewRootImpl N a t i v e P r e I m e I n p u t S t a g e : m Q u e u e L e n g t h = 0 a n d r o i d . v i e w . V i e w R o o t I m p l NativePreImeInputStage: mQueueLength=0 android.view.ViewRootImpl NativePreImeInputStage:mQueueLength=0android.view.ViewRootImplImeInputStage: mQueueLength=0
android.view.ViewRootImplKaTeX parse error: Expected '}', got '#' at position 338: …....I. 0,0-0,0 #̲102018a android…HostCallbacks@de35f9e
mContainer=android.app.Activity H o s t C a l l b a c k s @ d e 35 f 9 e m C u r S t a t e = 5 m S t a t e S a v e d = f a l s e m D e s t r o y e d = f a l s e V i e w R o o t : m A d d e d = t r u e m R e m o v e d = f a l s e m C o n s u m e B a t c h e d I n p u t S c h e d u l e d = f a l s e m C o n s u m e B a t c h e d I n p u t I m m e d i a t e l y S c h e d u l e d = f a l s e m P e n d i n g I n p u t E v e n t C o u n t = 0 m P r o c e s s I n p u t E v e n t s S c h e d u l e d = f a l s e m T r a v e r s a l S c h e d u l e d = f a l s e m I s A m b i e n t M o d e = f a l s e a n d r o i d . v i e w . V i e w R o o t I m p l HostCallbacks@de35f9e mCurState=5 mStateSaved=false mDestroyed=false ViewRoot: mAdded=true mRemoved=false mConsumeBatchedInputScheduled=false mConsumeBatchedInputImmediatelyScheduled=false mPendingInputEventCount=0 mProcessInputEventsScheduled=false mTraversalScheduled=false mIsAmbientMode=false android.view.ViewRootImpl HostCallbacks@de35f9emCurState=5mStateSaved=falsemDestroyed=falseViewRoot:mAdded=truemRemoved=falsemConsumeBatchedInputScheduled=falsemConsumeBatchedInputImmediatelyScheduled=falsemPendingInputEventCount=0mProcessInputEventsScheduled=falsemTraversalScheduled=falsemIsAmbientMode=falseandroid.view.ViewRootImplNativePreImeInputStage: mQueueLength=0
android.view.ViewRootImpl I m e I n p u t S t a g e : m Q u e u e L e n g t h = 0 a n d r o i d . v i e w . V i e w R o o t I m p l ImeInputStage: mQueueLength=0 android.view.ViewRootImpl ImeInputStage:mQueueLength=0android.view.ViewRootImplNativePostImeInputStage: mQueueLength=0
Choreographer:
mFrameScheduled=false
mLastFrameTime=74902929 (9414 ms ago)
View Hierarchy:
DecorView@3260a7f[LauncherExtension]
android.widget.LinearLayout{c10568 V.E… … 0,0-1440,2880}
android.view.ViewStub{b9f5a4c G.E… …I. 0,0-0,0 #102018a android:id/action_mode_bar_stub}
android.widget.FrameLayout{1d23605 V.E… … 0,0-1440,2880 #1020002 android:id/content}
com.android.launcher3.LauncherRootView{6ee4c6f V.E… … 0,0-1440,2880 #7f0900a4 app:id/launcher}
android.widget.ImageView{d4f0c87 G.ED… …I. 0,0-0,0 #7f09002b app:id/blur_background_in_bottom_of_rootview}
com.android.launcher3.dragndrop.DragLayer{4f5ef54 V.E… … 0,0-1440,2880 #7f090056 app:id/drag_layer}
com.android.launcher3.FocusIndicatorView{324ca95 V.ED… … 0,96-208,304 #7f090064 app:id/focus_indicator}
com.android.launcher3.Workspace{7e3a7b4 V.ED…L. … -2909,-2189-4349,5069 #7f090163 app:id/workspace}
com.android.launcher3.CellLayout{54a0481 VFED…CL. … 2949,2365-4309,4469}
android.widget.LinearLayout{a1d7aa I.E… … 0,0-0,0}
android.widget.ImageButton{c1acf9b VFED…C… …I. 0,0-0,0}
com.android.launcher3.ClickShadowView{f8dcf38 V.ED… … 0,0-320,468}
com.android.launcher3.ShortcutAndWidgetContainer{1d47b11 V.E… … 0,0-1360,2104}
FolderIcon {手机管理}
android.widget.ImageView{51dc476 V.ED… … 8,6-264,262 #7f0900ec app:id/preview_background}
AppIcon {手机管理}
AppIcon {联系人}
AppIcon {文件管理器}
AppIcon {计算器}
AppIcon {Quick备忘录+}
AppIcon {设置}
com.android.launcher3.CellLayout{18f8967 VFED…CL. … 4389,2365-5749,4469}
android.widget.LinearLayout{8ccca77 I.E… … 0,0-0,0}
android.widget.ImageButton{3eca6e4 VFED…C… …I. 0,0-0,0}
com.android.launcher3.ClickShadowView{ef4b74d V.ED… … 0,0-320,468}
com.android.launcher3.ShortcutAndWidgetContainer{99b202 V.E… … 0,0-1360,2104}
AppIcon {豌豆荚}
AppIcon {支付宝}
AppIcon {百度网盘}
AppIcon {微信}
AppIcon {高德地图}
AppIcon {美团}
AppIcon {QQ}
AppIcon {优酷视频}
AppIcon {网易云音乐}
AppIcon {手机淘宝}
AppIcon {王者荣耀}
AppIcon {当当}
AppIcon {迅雷}
AppIcon {WiFi万能钥匙}
AppIcon {发现精彩}
AppIcon {LBE安全大师}
AppIcon {Chrome}
com.android.launcher3.CellLayout{815503 VFED…CL. … 5829,2365-7189,4469}
android.widget.LinearLayout{5399713 I.E… … 0,0-0,0}
android.widget.ImageButton{13f4d50 VFED…C… …I. 0,0-0,0}
com.android.launcher3.ClickShadowView{d627b49 V.ED… … 0,0-320,468}
com.android.launcher3.ShortcutAndWidgetContainer{7f4ec4e V.E… … 0,0-1360,2104}
AppIcon {无人农机终端}
AppIcon {UTSmartCook}
com.android.quickstep.views.RecentsViewContainer{59c916f G.E… …I. 0,0-0,0 #7f0900de app:id/overview_panel_container}
com.android.quickstep.views.LauncherRecentsView{2d3ee7c V.ED… …ID 0,0-0,0 #7f0900dd app:id/overview_panel}
com.android.quickstep.views.ClearAllButton{6ce8305 VFED…C… …I. 0,0-0,0 #7f09003c app:id/clear_all_button}
android.widget.FrameLayout{cb77f5a V.E… …I. 0,0-0,0 #7f0900dc app:id/overview_guide_ani_view}
android.widget.LinearLayout{c8ad58b V.E… …I. 0,0-0,0 #7f0900df app:id/overview_swipeup_arrow}
android.view.View{8af7668 I.ED… …I. 0,0-0,0 #7f0900e0 app:id/overview_swipeup_guide_arrow1}
android.view.View{5394a81 I.ED… …I. 0,0-0,0 #7f0900e1 app:id/overview_swipeup_guide_arrow2}
com.android.launcher3.SwipeUpGuideText{ede3726 I.ED… …I. 0,0-0,0 #7f0900e2 app:id/overview_swipeup_guide_text}
com.android.launcher3.Hotseat{6cf3f67 V.E… … 0,2436-1440,2712 #7f090087 app:id/hotseat}
com.android.launcher3.CellLayout{3e3627b V.ED…L. … 0,0-1440,276 #7f0900a7 app:id/layout}
android.widget.LinearLayout{c399114 V.E… … 0,0-0,0}
android.widget.ImageButton{82f0dbd VFED…C… …I. 0,0-0,0}
com.android.launcher3.ClickShadowView{f669fb2 V.ED… … 40,0-428,324}
com.android.launcher3.ShortcutAndWidgetContainer{9066b03 V.E… … 40,0-1480,276}
AppIcon {手机}
AppIcon {信息}
AppIcon {照相机}
AppIcon {图片库}
android.widget.Button{3a8aa80 GFED…C… …I. 0,0-0,0 #7f09004e app:id/default_screen}
com.lge.launcher3.OverViewPanel{447b0ac I.E… … 0,2248-1440,2712 #7f0900af app:id/lg_overview_panel}
android.widget.FrameLayout{1c3c8b9 V.E… … 0,0-360,464}
android.widget.TextView{f9b04fe VFED…C… … 30,0-330,273 #7f090147 app:id/widget_button}
android.widget.FrameLayout{afab45f G.E… …I. 0,0-0,0}
android.widget.TextView{2deeac VFED…C… …ID 0,0-0,0 #7f090141 app:id/wallpaper_button}
android.widget.FrameLayout{74f3775 V.E… … 360,0-720,464}
android.widget.TextView{91e730a VFED…C… … 30,0-330,273 #7f090136 app:id/theme_button}
android.widget.FrameLayout{cc0377b G.E… …I. 0,0-0,0}
android.widget.TextView{2e14998 VFED… …ID 0,0-0,0 #7f090116 app:id/settings_button_vzw}
android.widget.FrameLayout{1e8d5f1 G.E… …I. 0,0-0,0}
android.widget.TextView{ab8b5d6 VFED… …ID 0,0-0,0 #7f09005b app:id/dynamic_gird_button}
android.widget.FrameLayout{190d057 V.E… … 720,0-1080,464}
android.widget.TextView{46d6744 VFED…C… … 30,0-330,273 #7f090115 app:id/settings_button}
android.widget.FrameLayout{aa3e02d V.E… … 1080,0-1440,464}
android.widget.TextView{5e25962 VFED…C… … 30,0-330,326 #7f0900f1 app:id/recent_uninstall_button}
com.lge.launcher3.dynamicgrid.DynamicGridPannelView{c681af3 G.E… …I. 0,0-0,0 #7f0900d9 app:id/overview_dynamic_panel}
android.widget.LinearLayout{b7bb3b0 V.E… …I. 0,0-0,0}
android.widget.LinearLayout{e8b5229 VFE…C… …I. 0,0-0,0 #7f0900d5 app:id/overview_dynaic_grid_layout1}
android.widget.ImageView{910a9ae V.ED… …I. 0,0-0,0 #7f0900d1 app:id/overview_dynaic_grid_icon1}
android.widget.TextView{a5f734f V.ED… …ID 0,0-0,0 #7f0900e3 app:id/overview_text1}
android.widget.LinearLayout{de05adc VFE…C… …I. 0,0-0,0 #7f0900d6 app:id/overview_dynaic_grid_layout2}
android.widget.ImageView{65de7e5 V.ED… …I. 0,0-0,0 #7f0900d2 app:id/overview_dynaic_grid_icon2}
android.widget.TextView{2c1b2ba V.ED… …ID 0,0-0,0 #7f0900e4 app:id/overview_text2}
android.widget.LinearLayout{6c9f56b VFE…C… …I. 0,0-0,0 #7f0900d7 app:id/overview_dynaic_grid_layout3}
android.widget.ImageView{88648c8 V.ED… …I. 0,0-0,0 #7f0900d3 app:id/overview_dynaic_grid_icon3}
android.widget.TextView{e0a1d61 V.ED… …ID 0,0-0,0 #7f0900e5 app:id/overview_text3}
android.widget.LinearLayout{9484086 VFE…C… …I. 0,0-0,0 #7f0900d8 app:id/overview_dynaic_grid_layout4}
android.widget.ImageView{5107d47 V.ED… …I. 0,0-0,0 #7f0900d4 app:id/overview_dynaic_grid_icon4}
android.widget.TextView{a1b2974 V.ED… …ID 0,0-0,0 #7f0900e6 app:id/overview_text4}
android.widget.LinearLayout{7ea2e9d V.E… …I. 0,0-0,0}
android.widget.Button{357df12 VFED…C… …I. 0,0-0,0 #7f0900db app:id/overview_dynamicgrid_cancel_btn}
android.widget.Button{c4da6e3 VFED…C… …I. 0,0-0,0 #7f0900da app:id/overview_dynamicgrid_apply_btn}
com.lge.launcher3.pageindicator.PageIndicatorExtension{e89fc50 V.E… … 606,2280-834,2436 #7f0900e7 app:id/page_indicator}
com.lge.launcher3.pageindicator.PageIndicatorMarkerExtension{413b6b2 VFE…CL. … 0,40-76,116}
android.widget.ImageView{c7b68e0 V.ED… … 20,20-56,56 #7f090091 app:id/inactive}
android.widget.ImageView{7c01799 V.ED… … 20,20-56,56 #7f090013 app:id/active}
com.lge.launcher3.pageindicator.PageIndicatorMarkerExtension{dbb3603 VFE…CL. … 76,40-152,116}
android.widget.ImageView{d50da5e V.ED… … 20,20-56,56 #7f090091 app:id/inactive}
android.widget.ImageView{a9ce3f V.ED… … 20,20-56,56 #7f090013 app:id/active}
com.lge.launcher3.pageindicator.PageIndicatorMarkerExtension{8090bb9 VFE…CL. … 152,40-228,116}
android.widget.ImageView{8de330c V.ED… … 20,20-56,56 #7f090091 app:id/inactive}
android.widget.ImageView{1719455 V.ED… … 20,20-56,56 #7f090013 app:id/active}
android.widget.LinearLayout{74c3e6a V.E… … 654,2272-786,2436 #7f090126 app:id/swipeup_arrow}
android.view.View{6770f5b I.ED… …I. 0,0-132,132 #7f090127 app:id/swipeup_guide_arrow1}
android.view.View{2c173f8 I.ED… …I. 0,32-132,164 #7f090128 app:id/swipeup_guide_arrow2}
com.android.launcher3.SwipeUpGuideText{78420d1 I.ED… …I. 0,2264-1440,2436 #7f090129 app:id/swipeup_guide_text}
com.lge.launcher3.droptarget.LGSearchDropTargetBar{7e7d736 I.E… …ID 0,136-1440,345 #7f09010c app:id/search_drop_target_bar}
android.widget.FrameLayout{b0d4637 V.E… …ID 0,0-1440,209 #7f090057 app:id/drag_target_bar}
android.widget.FrameLayout{595d7a4 G.E… …ID 0,0-1440,209}
com.android.launcher3.DeleteDropTarget{558f90d V.ED… …ID 0,0-1440,209 #7f09004f app:id/delete_target_text}
android.widget.FrameLayout{fd230c2 V.E… …ID 0,0-1440,209}
com.lge.launcher3.droptarget.LGUninstallDropTarget{5e8305c V.ED… …ID 0,0-1440,209 #7f09013d app:id/uninstall_target_text}
android.widget.FrameLayout{f660ed3 G.E… …ID 0,0-1440,209}
com.lge.launcher3.droptarget.CancelDropTarget{12aca10 V.ED… …ID 0,0-1440,209 #7f090034 app:id/cancel_target_text}
android.widget.FrameLayout{1291909 G.E… …ID 0,0-1440,209}
com.lge.launcher3.droptarget.DisableDropTarget{a16970e V.ED… …ID 0,0-1440,209 #7f090050 app:id/disable_target_text}
android.widget.LinearLayout{78c52f V.E… … 0,0-1440,209}
com.lge.launcher3.droptarget.LGUninstallDropTarget{da773c G.ED… …ID 0,0-0,0 #7f09001f app:id/all_apps_uninstall_target_text}
com.lge.launcher3.droptarget.DisableDropTarget{1c13cc5 G.ED… …ID 0,0-0,0 #7f09001a app:id/all_apps_disable_target_text}
com.android.launcher3.DeleteDropTarget{529161a G.ED… …ID 0,0-0,0 #7f090019 app:id/all_apps_delete_target_text}
android.widget.TextView{956854b G.ED… …I. 0,0-544,184}
android.widget.TextView{975cb28 G.ED… …I. 0,0-544,184}
android.widget.TextView{3fde041 G.ED… …I. 0,0-544,184}
android.widget.TextView{b279e6 G.ED… …I. 0,0-544,184}
com.lge.launcher3.widgettray.LGWidgetContainerView{6f7ec34 GFE… …ID 0,96-1440,2712 #7f090161 app:id/widgets_view}
android.widget.LinearLayout{baf9307 V.E… …ID 0,0-1440,2616 #7f090149 app:id/widget_container}
android.widget.FrameLayout{b062b27 V.E… …ID 0,0-1440,176}
com.lge.launcher3.allapps.AllAppsSearch{9f071d4 G.E… …I. 0,0-0,0 #7f090155 app:id/widget_search_bar}
android.widget.ImageView{c073f7d VFED…C… …I. 0,0-0,0 #7f09001e app:id/all_apps_search_exit}
android.widget.SearchView{c1c4e72 VFE… …I. 0,0-0,0 #7f09001d app:id/all_apps_search_edittext}
android.widget.LinearLayout{62052c3 V.E… …I. 0,0-0,0 #10203d1 android:id/search_bar}
android.widget.TextView{accd740 G.ED… …I. 0,0-0,0 #10203d0 android:id/search_badge}
android.widget.ImageView{e4d5679 GFED…C… …I. 0,0-0,0 #10203d2 android:id/search_button}
android.widget.LinearLayout{1dcdfbe V.E… …I. 0,0-0,0 #10203d4 android:id/search_edit_frame}
android.widget.ImageView{22b581f G.ED… …I. 0,0-0,0 #10203d6 android:id/search_mag_icon}
android.widget.LinearLayout{848276c V.E… …I. 0,0-0,0 #10203d7 android:id/search_plate}
android.widget.SearchViewKaTeX parse error: Expected '}', got '#' at position 55: …....ID 0,0-0,0 #̲10203d8 android…SearchAutoComplete{4c9f2b1 VFED…CL. …ID 0,0-0,0 #10203d8 android:id/search_src_text}
android.widget.ImageView{7d47396 GFED…C… …I. 0,0-0,0 #10203d3 android:id/search_close_btn}
android.widget.LinearLayout{cb11b17 G.E… …I. 0,0-0,0 #1020434 android:id/submit_area}
android.widget.ImageView{873bb04 GFED…C… …I. 0,0-0,0 #10203d5 android:id/search_go_btn}
android.widget.ImageView{55a08ed GFED…C… …I. 0,0-0,0 #10203da android:id/search_voice_btn}
android.widget.ImageView{a5c3322 G.ED… …I. 0,0-0,0 #7f09002c app:id/blur_background_in_top_of_draglayer}
android.view.ViewStub{f2251b3 G.E… …I. 0,0-0,0 #7f0900a6 app:id/launcher_overlay_stub}
Looper (main, tid 2) {9f38370}
Message 0: { when=+3s125ms what=2 target=com.lge.launcher3.liveicon.LiveIcon$1 }
Message 1: { when=+14s461ms what=2 target=com.lge.launcher3.liveicon.LiveIcon$1 }
Message 2: { when=+14s525ms what=2 target=com.lge.launcher3.liveicon.LiveIcon$1 }
Message 3: { when=+14s743ms what=2 target=com.lge.launcher3.liveicon.LiveIcon$1 }
Message 4: { when=+14s896ms what=2 target=com.lge.launcher3.liveicon.LiveIcon$1 }
Message 5: { when=+40s43ms what=2 target=com.lge.launcher3.liveicon.LiveIcon$1 }
Message 6: { when=+40s43ms what=2 target=com.lge.launcher3.liveicon.LiveIcon$1 }
Message 7: { when=+57s234ms what=2 target=com.lge.launcher3.liveicon.LiveIcon$1 }
Message 8: { when=+57s788ms what=2 target=com.lge.launcher3.liveicon.LiveIcon$1 }
(Total messages: 9, polling=false, quitting=false)
AutofillManager:
sessionId: -2147483648
state: UNKNOWN
context: com.lge.launcher3.LauncherExtension@11b312f
client: com.lge.launcher3.LauncherExtension@11b312f (android.os.BinderProxy@a1d820)
enabled: false
hasService: true
hasCallback: false
onInvisibleCalled false
last autofilled data: null
tracked views: null
fillable ids: null
entered ids: null
save trigger id: null
save on finish(): false
compat mode enabled: false
debug: false verbose: false
Autofill Compat Mode: false
ResourcesManager:
cached apks: 0 [cache disabled]
total apks: 3
resources: 4
resource impls: 3
4、卸载你想卸载的应用
上一步中我们拿到了你想要的卸载应用的包名了,这一步就小儿科了!
提供下面命令:
卸载: adb shell pm uninstall --user 0 应用包名
停用: adb shell pm disable-user 应用包名
启用: adb shell pm enable 应用包名
参考:
【1】、adb命令查看当前运行activity
【2】、android 开发中Adb命令的使用查看所有的Apk包