я получаю следующее сообщение об ошибке в моем приложении, сообщенные Google Play:MapFragment - CameraUpdateFactory не инициализируется
...
Caused by: java.lang.NullPointerException: CameraUpdateFactory is not initialized
at com.google.android.gms.internal.x.b(Unknown Source)
at com.google.android.gms.maps.CameraUpdateFactory.aE(Unknown Source)
at com.google.android.gms.maps.CameraUpdateFactory.newCameraPosition(Unknown Source)
at com.foo.DetailActivity.onCreate(DetailActivity.java:144)
Я уже читал сообщения, как this. Мой код в DetailActivity
(распространяется FragmentActivity) следующим образом:
try {
MapsInitializer.initialize(this);
} catch (GooglePlayServicesNotAvailableException e) {
Log.e("map", " " + e.getMessage());
}
SharedPreferences settings = getPreferences(0);
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(new LatLng(settings.getFloat("lat", -28.709861f), settings.getFloat("lon", 26.015625f)))
.zoom(settings.contains("lat") ? 11 : 6)
.build();
CameraUpdate cu = CameraUpdateFactory.newCameraPosition(cameraPosition); //line 144
Я не знаю, как это все еще неиницализированные. На этом этапе моего кода я еще не создал MapFragment. Я не вижу, что это должно было быть после создания MapFragment, хотя, поскольку я ничего не звоню из MapFragment.
Любые идеи, почему это не работает?
'Я еще не создал MapFragment. ' Вы еще не добавили« MapFragment »в макет? –
Только около 10 строк. Сначала я инициализирую материал, связанный с картой, затем настройте его, используя все необходимые материалы. –
Код выглядит нормально, а javadoc для MapInitializer указывает, что он инициализирует CameraUpdateFactory. Вы уверены, что вы не выбрали исключение GooglePlayServiceNotAvailableException и не пропустили его в журналах? –