В моем приложении я открываю Google Maps со следующим кодом.
String map_url = "geo:0,0?q=";
map_url += String.valueOf((double)latitude / 1E6) + ",";
map_url += String.valueOf((double)longitude / 1E6);
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setClassName("com.google.android.apps.maps","com.google.android.maps.MapsActivity");
intent.setData(Uri.parse(map_url));
startActivity(intent);
И он отлично работает на многих устройствах. Но сегодня я увидел отчёт ACRA.
android.content.ActivityNotFoundException: Unable to find explicit activity class {com.google.android.apps.maps/com.google.android.maps.MapsActivity}; have you declared this activity in your AndroidManifest.xml?
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1404)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1378)
at android.app.Activity.startActivityForResult(Activity.java:2817)
at android.app.Activity.startActivity(Activity.java:2923)
Устройство Vortex с операционной системой OS2.2.2. Исключение ясно говорит мне, что мне нужно объявить "com.google.android.maps.MapsActivity" в манифесте. Вопрос в том, что я этого не делал, но он работает на многих устройствах, поэтому результат не является согласованным: почему я получаю исключение на этом устройстве, а я не получаю на многих других устройствах?
Пожалуйста, не говорите: «Вы должны добавить это, чтобы проявить». В этом случае, скажите, пожалуйста, почему некоторые (не все) устройства работают без исключения.
Заранее спасибо.