2010-11-21 10 views
5

私はインテントを呼び出す方法を見ていますが、存在しない場合は、インテントを持つアプリケーションをダウンロードするために市場にリダイレクトされます。インテントがインストールされていない場合にアプリケーションをダウンロードする

今はインテントが存在するかどうかを確認しますが、ダウンロードするリソースをユーザーに指示する方法はわかりません。

おかげで、事前

答えて

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; 

意向を経由してGoogleの市場を開くには:

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

2番目の部分は、私が何を意味するのかです。 –

+3

アプリの正確なIDを知っているなら、 'Uri.parse(" market:// details?id = ")'を使ってください。 Google Playで目的のアプリの詳細ページを開いているときに、ブラウザのリンクにIDが表示されます。 [Doc](http://developer.android.com/distribute/googleplay/promote/linking.html) – Jane

1

に私が前にこれを行っていないが、理論的にはそれだけで、別のテントビューフラグをコールし、market://... URIは、アプリケーションを指しています。

関連する問題