2011-09-04 137 views
1

我只是想通过提供一个启动市场的按钮来“帮助”我的用户向我的应用程序提供反馈。当然,在这里找到了一个可行的解决方案,其中有:确定设备是否可以启动Android电子市场应用程序

Uri uri = Uri.parse("market://details?id=<mypackagename>"); 
Intent intent = new Intent (Intent.ACTION_VIEW, uri); 
startActivity(intent); 

很简单,谢谢!

但是:在我第一次运行时,我在模拟器上有这个。立即给出ActivityNotFoundException

现在,我的问题:有没有一种方法可以在我尝试之前找出对此意图的调用是否会成功?这样我就可以完全隐藏按钮甚至不提供选项。

非常感谢您的赞赏!

+0

回答这个问题会给你你需要什么 http://stackoverflow.com/questions/3341176/how-to-detect-the-存在的机器人市场上的设备 –

回答

1

您还可以使用this method

相反IMDB的,用你的市场网址:market://details?id=&lt;mypackagename>

0

仅仅因为仿真器上没有Android Market而抛出异常。每款采用Android设备的设备都拥有Android Market,因此您不必担心这种异常会抛到真实的设备上。希望这可以帮助。

+0

那么,有真正的设备没有市场。当然,他们获得我的应用程序的机会很小,但这并非不可能! :) – Zordid

5

而不是使用这个网址,你可以用这一个:

https://market.android.com/details?id=<mypackagename>

即使用户不具有市场应用,他可以去网站。 如果他有市场应用程序,他应该在互联网和市场之间提示。 enter image description here

BTW,环绕你的代码中的情况下,尝试捕捉他没有什么; O)

+1

是的,那可以工作 - 但它看起来不如直接跳跃... buuuuut,我可以做到这一点,每当我发现异常! :) – Zordid

+0

当然,这可能是很好的; o) – Whiler

相关问题