2010-11-21 32 views
5

我知道我已经看到一种调用Intent的方法,如果它不存在,该函数将重定向到市场以下载具有该意图的应用程序。如果意图未安装,下载应用程序

现在我检查是否存在意图,但我不知道如何指向用户下载资源。

在此先感谢

回答

19

要检查一些意向性可用:

String intentToCheck = "com.google.SCAN"; //can be any other intent 
final PackageManager packageManager = getPackageManager(); 
final Intent intent = new Intent(intentToCheck); 
List list = packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); 
final boolean isAvailable = list.size() > 0; 

通过意向打开谷歌市场:

Intent marketIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://search?q=pname:com.google.scan")); 
startActivity(marketIntent); 
+0

第二部分是我的意思。 – 2010-11-21 21:02:52

+3

如果您知道应用程序的确切ID,请使用'Uri.parse(“market:// details?id = ”)''。当您在Google Play中所需的应用的详细信息页面上时,您可以在浏览器链接中找到该ID。 [文档](http://developer.android.com/distribute/googleplay/promote/linking.html) – Jane 2013-03-15 09:32:21

1

我没有做过,但在理论上它只是一个视图标志另一个意图调用和market://... URI指向应用程序。

相关问题