前言
android隐式意图可以帮我们唤起系统内的其它应用,这个很好理解。系统桌面也是一个app,它能做到的事情我们一样可以做到。
Intent intent = new Intent();
ComponentName cmp= new ComponentName(pkg, cls);
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setComponent(cmp);
context.startActivity(intent);

那我们如何找到应用的pkg和class信息呢?
1.首先把我们希望唤醒的应用打开,其它任务全部退出(主要是方便我们去查找应用)

2.使用:adb shell dumpsys activity activities 命令,输出活动应用活动页面信息
adb shell dumpsys activity activities

3.找到pkg信息和class信息(如上图红色线框)
常见应用的pkg和class信息
| 应用名称 | 应用pkg信息 | 应用class |
|---|---|---|
| 花生地铁 | com.nfyg.hsbb | com.nfyg.hsbb.HSLauncherActivity |
| 手机天猫 | com.tmall.wireless | com.tmall.wireless.splash.TMSplashActivity |
| 西瓜视频 | com.ss.android.article.video | com.ss.android.article.video.activity.SplashActivity |
| 微信 | com.tencent.mm | com.tencent.mm.ui.LauncherUI |
| com.tencent.mobileqq | com.tencent.mobileqq.activity.SplashActivity | |
| ABOUTCG | com.aboutcg.app | com.aboutcg.app.common.baseactivity.StartActivity |
| 支付宝 | com.eg.android.AlipayGphone | com.eg.android.AlipayGphone.AlipayLogin |
本文介绍了如何利用Android隐式意图寻找并启动第三方应用的方法。首先,在确保目标应用打开且后台无其他活动时,通过ADB命令`adb shell dumpsys activity activities`获取应用活动页面信息。接着,解析输出内容,找出pkg和class信息,从而实现隐式意图启动应用。
1034

被折叠的 条评论
为什么被折叠?



