如何检查我的用户设备上是否安装了Android Market?

时间:2011-09-20 08:13:39

标签: android google-play

我怎么能写一个可以告诉我Android手机上安装了android市场的代码?

2 个答案:

答案 0 :(得分:8)

有两种方法。您可以使用已提及的getPackageManager()getApplicationInfo()(如果找不到包,则会引发PacketManager.NameNotFoundException - 请参阅here)。 Android Market的软件包名称为com.android.vending

但是,您也可以创建一个虚拟意图来搜索市场并检查其处理方式。如果结果列表至少有一个条目,则可以确定已安装Android Market:

Intent market = new Intent(Intent.ACTION_VIEW, Uri.parse("market://search?q=dummy"));
PackageManager manager = getPackageManager();
List<ResolveInfo> list = manager.queryIntentActivities(mmarket, 0);

答案 1 :(得分:1)

这是我做的(假定浏览器存在):

Intent market = new Intent(Intent.ACTION_VIEW).setData(Uri
        .parse("market://details?id=com.example.app"));


Intent website = new Intent(Intent.ACTION_VIEW).setData(Uri
        .parse("http://play.google.com/store/apps/details?id=com.example.app"));

try {

    startActivity(market);

} catch (ActivityNotFoundException e) {

    startActivity(website);

}