我正在学习Implicit Intents
。我正在制作一个涵盖大多数implicit intent
概念的应用程序,此应用程序的ScreenShot在这里。
在这个应用程序中,我想访问device default Weather and Radio applications
。But the problem is these two apps don't even have Application id
。我进行了大量搜索,以Application id
在我的设备中获取这两个默认应用程序Oppo
。如果我在另一部与此不同的手机上运行该应用程序application id
,该如何解决呢?
这两个应用程序都在这里:
您无法像具有隐式意图的浏览器一样打开这些应用程序。不同的制造商使用不同的天气和广播应用程序。因此,唯一的解决方案是使用程序包名称启动应用程序。要查找应用程序的软件包,可以使用ADB或任何软件包查看器应用程序。例如,下一个https://play.google.com/store/apps/details?id=com.csdroid.pkg&hl=uk
然后使用下一个代码打开应用程序。
public void openApp(Context context, String packageName) {
PackageManager packageManager = context.getPackageManager();
Intent launchIntent = packageManager.getLaunchIntentForPackage(packageName);
if (launchIntent != null) {
context.startActivity(launchIntent);
} else {
Toast.makeText(context, "Package not found", Toast.LENGTH_SHORT).show();
}}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句