某些Android設備沒有Android Market,比如韓國等。如何檢測設備上是否存在Android電子市場?
是否有可能在運行時檢測到Android Market的存在?
我知道我可以嘗試先打開一個市場uri,看看是否有任何異常拋出。但我認爲這不是一個明智的做法。
某些Android設備沒有Android Market,比如韓國等。如何檢測設備上是否存在Android電子市場?
是否有可能在運行時檢測到Android Market的存在?
我知道我可以嘗試先打開一個市場uri,看看是否有任何異常拋出。但我認爲這不是一個明智的做法。
我知道我可以嘗試打開市場URI 首先看是否有拋出的任何異常 。
的市場Uri
創建ACTION_VIEW
Intent
,然後用PackageManager
和queryIntentActivities()
來看看你得到任何東西。如果返回空列表,則設備上的任何處理都不會處理市場Uri
值。
完整的解決方案,也通過讀取自身軟件包名...
Context context = this;
final PackageManager packageManager = context.getPackageManager();
String packagename = this.getPackageName();
String url = "market://details?id=" + packagename;
Intent i2 = new Intent(Intent.ACTION_VIEW);
i2.setData(Uri.parse(url));
List<ResolveInfo> resolveInfo = packageManager.queryIntentActivities(i2,PackageManager.MATCH_DEFAULT_ONLY);
if (resolveInfo.size() > 0) startActivity(i2);
這是一個很好的方法,我希望所有的建設第三方存儲編程處理市場的URI改正使他們的商店工作,作爲一個真正的更換到谷歌市場。 – Janusz 2010-07-27 07:28:57