Bạn luôn có thể gọi getInstalledPackages () từ lớp PackageManager và kiểm tra để đảm bảo lớp thị trường được cài đặt. Bạn cũng có thể sử dụng queryIntentActivities () để đảm bảo rằng Ý định bạn xây dựng sẽ có thể được xử lý bởi một cái gì đó, ngay cả khi đó không phải là ứng dụng thị trường. Đây có lẽ là điều tốt nhất để làm thực sự bởi vì nó linh hoạt và mạnh mẽ nhất.
Bạn có thể kiểm tra xem ứng dụng thị trường có ở đó không
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse("market://search?q=foo"));
PackageManager pm = getPackageManager();
List<ResolveInfo> list = pm.queryIntentActivities(intent, 0);
Nếu danh sách có ít nhất một mục, Thị trường ở đó.
Bạn có thể sử dụng cách sau để khởi chạy Android Market trên trang ứng dụng của mình, nó tự động hơn một chút:
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse("market://details?id=" + getPackageName()));
startActivity(i);
Nếu bạn muốn kiểm tra điều này trên trình giả lập của mình, có lẽ bạn chưa cài đặt thị trường trên đó: xem các liên kết sau để biết thêm chi tiết:
Cách kích hoạt thị trường Android trong Trình giả lập Google Android
Cài đặt Google Play trên Trình giả lập Android