获取打开指定Action的所有应用包名

获取打开指定功能的所有应用:发消息,分享等等。

如打开网页,下面代码即可查看所有的浏览器
    //查找所有浏览器
    private void queryPackage() {
        PackageManager manager = getPackageManager();
        Intent intent = new Intent(Intent.ACTION_VIEW);
        intent.setData(Uri.parse("http://www.baidu.com"));
        List<ResolveInfo> infos = manager.queryIntentActivities(intent, PackageManager.MATCH_ALL);
        for (ResolveInfo info : infos) {
            Log.d("xxx", info.toString());
        }
    }

 

转载于:https://www.cnblogs.com/wenhui92/p/6242727.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: AutoJS可以通过以下代码打开指定的App和Activity: ``` app.startActivity({ action: "android.intent.action.VIEW", packageName: "com.example.app", className: "com.example.app.MainActivity" }); ``` 其中,packageName是要打开的App的包名,className是要打开的Activity的类名。可以通过查看App的AndroidManifest.xml文件来获取这些信息。 ### 回答2: 使用Auto.js打开指定Activity的方法如下: 首先,确保已经正确安装并配置好Auto.js。 使用auto()函数启动Auto.js控制台,然后在控制台中执行如下脚本代码: ```javascript launchApp("你要打开应用包名"); sleep(2000); // 等待应用启动 var activityName = "你要打开的Activity的完整路径"; app.startActivity({ action: "android.intent.action.MAIN", packageName: "你要打开应用包名", className: activityName }); ``` 替换代码中的"你要打开应用包名"和"你要打开的Activity的完整路径"为你要打开应用包名和Activity的完整路径。 例如,如果要打开微信的聊天页面,包名为"com.tencent.mm",Activity的完整路径为"com.tencent.mm.ui.LauncherUI",则代码应为: ```javascript launchApp("com.tencent.mm"); sleep(2000); // 等待应用启动 var activityName = "com.tencent.mm.ui.LauncherUI"; app.startActivity({ action: "android.intent.action.MAIN", packageName: "com.tencent.mm", className: activityName }); ``` 执行上述代码后,Auto.js会打开指定应用并跳转到指定的Activity。 ### 回答3: 要使用AutoJS打开指定的Activity,可以使用以下代码: ``` var packageName = "com.example.app"; // 替换为目标应用包名 var activityName = "com.example.app.MainActivity"; // 替换为目标应用的Activity名 app.launchPackage(packageName); sleep(1000); // 等待应用启动 var currentPackage = currentActivity(); // 获取当前应用包名 if (currentPackage !== packageName) { app.launch(packageName); sleep(1000); // 等待应用启动 } shell("am start -n " + packageName + "/" + activityName, true); // 打开目标Activity ``` 请将 `com.example.app` 替换为目标应用包名,将 `com.example.app.MainActivity` 替换为目标应用的Activity名。此代码会打开目标应用,并跳转到指定的Activity页面。 需要注意的是,AutoJS本身并不能直接通过Activity名打开应用。上述代码使用了Shell命令 `am start` 来实现打开指定的Activity,这意味着需要在手机上开启ADB调试模式。请确保在手机的开发者选项中启用了ADB调试,并且在连接电脑时允许USB调试连接。 此外,还需要在AutoJS的设置中打开'在后台运行'选项,以确保AutoJS在切换应用时能够正常执行代码而不被系统关闭。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值