韓国など、一部の Android デバイスには Android マーケットがありません。
実行時に Android マーケットの存在を検出することはできますか?
最初にマーケット URI を開いて、例外がスローされるかどうかを確認できることはわかっています。しかし、これは賢明な方法だとは思いません。
韓国など、一部の Android デバイスには Android マーケットがありません。
実行時に Android マーケットの存在を検出することはできますか?
最初にマーケット URI を開いて、例外がスローされるかどうかを確認できることはわかっています。しかし、これは賢明な方法だとは思いません。
最初にマーケット URI を開いて、例外がスローされるかどうかを確認できることはわかっています。
ACTION_VIEW IntentMarketの を作成し、と をUri使用PackageManagerしqueryIntentActivities()て、何かが返されるかどうかを確認します。Uri空のリストが返された場合、デバイス上で Market値を処理するものは何もありません。
パッケージ名を単独で読み取る完全なソリューション...
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);