指定したmarket
プロトコルを使用する必要があります。
final String appPackageName = "com.example"; // Can also use getPackageName(), as below
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName)));
これは、マーケットがインストールされていないデバイス(エミュレータなど)でクラッシュすることに注意してください。したがって、私は次のようなものを提案します:
final String appPackageName = getPackageName(); // getPackageName() from Context or Activity object
try {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + appPackageName)));
} catch (android.content.ActivityNotFoundException anfe) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://play.google.com/store/apps/details?id=" + appPackageName)));
}
getPackageName()
from Context
またはそのサブクラスを使用して一貫性を保つ(@cprcrackに感謝!)。マーケットインテントの詳細については、リンクをご覧ください。
market://
プロトコルも使用できません。この動作を見ている人はいますか?