Есть два пути. Вы можете использовать уже упомянутые getPackageManager()
и getApplicationInfo()
(если пакет не найден, будет выброшено PacketManager.NameNotFoundException
- см. здесь ). Название пакета Android Маркета 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);