gpt4 book ai didi

android - 无法使用包名称启动与我的应用程序不同的应用程序

转载 作者:行者123 更新时间:2023-11-29 00:14:31 25 4
gpt4 key购买 nike

我正在尝试从我的应用程序打开 Chrome 应用程序。代码很简单。

我使用这段代码获取了 Chrome 应用的包名:

    PackageManager manager = Values.activity.getPackageManager();

Intent i = new Intent(Intent.ACTION_MAIN, null);
i.addCategory(Intent.CATEGORY_LAUNCHER);
List<ResolveInfo> availableActivities = manager.queryIntentActivities(i, 0);
for(ResolveInfo ri:availableActivities){
apps.add(ri.activityInfo.packageName);
}

//the package name of Chrome from packagemanager is "com.android.chrome"

我试着像这样打开 Chrome:

Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.android.chrome");
startActivity( LaunchIntent );

但是没有任何错误发生,我的 logcat 是这样说的:

12-28 20:28:52.298: I/ActivityManager(482): START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 pkg=com.android.chrome cmp=com.android.chrome/com.google.android.apps.chrome.Main} from pid 20474

我错过了什么?从 packagemanager 中获取的包名是否错误?

最佳答案

这是从您的应用程序启动浏览器的通用代码:

                String uriString = "http://stackoverflow.com/";
Intent intent = new Intent();
intent.setData(Uri.parse(uriString));
intent.setAction(Intent.ACTION_VIEW);

if (intent.resolveActivity(getPackageManager())!= null) {
startActivity(intent);
} else {
// Any browser is not available
}

请问您为什么只想启动 Chrome?

关于android - 无法使用包名称启动与我的应用程序不同的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27683438/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com