我正在用二维码扫描仪扫描二维码(特定数据编码的地方)。如果我的应用程序安装在设备上,则应用程序将启动。如果应用程序没有安装,那么它会将用户带到市场来下载应用程序。我在网上搜索了很多次,只找到了this的问题。
以下是扫描二维码时调用的清单文件中的活动
<activity android:name=".map.TestQrOpenActivity">
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT"/>
<category android:name="android.intent.category.BROWSABLE"/>
<data android:scheme="uniqueapp"/>
</intent-filter>
</activity>这是我的二维码中编码的字符串
uniqueapp://myData如果应用程序安装在设备上,这是完美的,但如果它没有安装,我需要去谷歌play下载它,如果应用程序存在,打开uniqueapp://myData或打开market://details?id=com.my.package.name,这是可能的吗?(我不想写我自己的扫描器)
发布于 2016-02-22 21:59:54
尝尝这个
public static boolean intentIsAvailable(Context ctx, Intent intent) {
final PackageManager mgr = ctx.getPackageManager();
List<ResolveInfo> list =
mgr.queryIntentActivities(intent,
PackageManager.MATCH_DEFAULT_ONLY);
return list.size() > 0;
}发布于 2016-02-23 00:08:35
重构问题的:
从我的阅读来看,我认为你想要完成以下几点:
< code >G211
我想你可以用应用程序链接解决我描述的所有四种用例。
安卓应用链接:
http://developer.android.com/training/app-links/index.html
有了应用程序链接,你可以把你的URL放在前面,如果安装了应用程序,你的应用程序就会拦截它,如果没有安装,android会简单地将用户发送到你的网站。一旦他们在你的网站上,你可以告诉他们他们需要安装你的应用程序。
发布于 2016-02-22 22:40:40
也许这就是你的解决方案:
appurl
注意:应用程序将始终尝试第一个url,然后回退到第二个url。例如,在“tweetbot - iPhone”下,如果你想打开tweetbot应用,你可以将tweetbot://添加到第一个文本字段中,然后将iTunes商店的url添加到第二个文本字段中。当用户点击链接时,如果他们在他们的iPhone上,它会检查用户是否安装了tweetbot,如果没有,它会把他们带到tweetbot商店。
它会生成一个网址和一个二维码希望这是你需要的。
https://stackoverflow.com/questions/35555439
复制相似问题