Zen*_*aro 6 android url-scheme installed-applications
我已经为我的 Android 应用程序注册了一个 url 方案(假设 myapp://host)。
在我的其他应用程序上,我可以使用 Intent 启动该应用程序,但如何在不启动它的情况下检查第一个应用程序是否已安装?
在 iOS 中,这很简单
[[UIApplication sharedApplication] canOpenUrl:@"myapp://"];
Run Code Online (Sandbox Code Playgroud)
Android 中有类似的吗?(简单的方法)
我想使用 url 方案进行检查。我知道如何使用包名称进行检查,但我也不知道如何从 PackageInfo 获取 url 方案...(更难的方法)
PackageManager pm = m_cContext.getPackageManager();
boolean installed = false;
try {
@SuppressWarnings("unused")
PackageInfo pInfo = pm.getPackageInfo(szPackageName, PackageManager.GET_ACTIVITIES);
installed = true;
}
catch (PackageManager.NameNotFoundException e) {
installed = false;
}
Run Code Online (Sandbox Code Playgroud)
提前致谢!
注意:这是针对 iOS 的同一问题的 Android 版本: 以编程方式检测应用程序是否安装在 iPhone 上
如果您知道如何启动应用程序,则创建启动应用程序的意图,然后调用 queryIntentActivities
Intent intent = //your app launching intent goes here
PackageManager packageManager = mContext.getPackageManager();
List<ResolveInfo> resolvedActivities = packageManager.queryIntentActivities(intent,0);
if(resolvedActivities.size() >0)
\\present
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5544 次 |
| 最近记录: |