2011-08-31 91 views
1

这不起作用Android市场意图不起作用,但是网页链接呢?

Intent marketLaunch = new Intent(Intent.ACTION_VIEW); 
    marketLaunch.setData(Uri.parse("market://details?id=myVirtualHealthCheck.com.Android")); 
    startActivity(marketLaunch); 

但网站链接确实....

https://market.android.com/details?id=myVirtualHealthCheck.com.Android

这是超级混乱,任何想法?

+0

如果您正在使用模拟器,这将无法正常工作,因为模拟器没有安装市场应用程序 – Josnidhin

+0

好吧,这很奇怪。我有一个爱可视A32作为测试设备,该应用程序没有在该设备的市场上找到,但它在我的Optimus S测试手机上发现....是否可用的应用程序在不同的设备上有所不同?我想我会在用户打开付费应用程序链接时向他们敬酒,并告诉他们该设备不适用于他们的设备?该拱门正在运行2.2.1和优化运行2.2.2 – Jarrette

+0

嗯..我猜想你的应用程序清单,市场检查,以决定应用程序是否可用在特定的设备上。 – Josnidhin

回答

1

我猜可用的应用程序不同从设备到设备...

0

你可能想在Android Market filters读了起来:

当用户搜索或在Android Market浏览在Android设备上,结果将根据哪些应用程序与该设备兼容进行过滤。例如,如果应用程序需要相机(如应用程序清单文件中指定的),则Android电子市场将不会在任何没有相机的设备上显示该应用程序。

清单文件中与设备配置进行比较的声明不是应用程序如何过滤的唯一部分。由于用户的国家和运营商,SIM卡的存在或不存在以及其他因素,也可能发生过滤。

3

林不知道这会有所帮助,但只是为你的知识(虽然它似乎在你的附件中的例子代码,你做的一切是罚款)的应用ID(=你的包:myVirtualHealthCheck.com.Android)已被写入与android市场中的情况完全相同。

例如这个码将不工作

marketLaunch = new Intent(Intent.ACTION_VIEW); 
marketLaunch.setData(Uri.parse("market://details?id=myvirtualhealthcheck.com.android")); 
startActivity(marketLaunch); 
在上述示例中的id为低的情况下,作为反对在电子市场实际的ID是myVirtualHealthCheck.com.Android

,因此使用它将导致“页面未找到错误”