如果首次使用Android,GoogleMap v2会崩溃

时间:2014-01-28 10:10:34

标签: java android google-maps

我在Android应用程序中添加了GoogleMap v2。在正常使用中,我没有问题。 但是,如果我重置手机并安装我的应用程序,地图会崩溃。

报告:

Caused by: java.lang.NullPointerException: CameraUpdateFactory is not initialized

当我更新谷歌服务时,这个错误消失了。

在使用应用程序之前,任何人都会有跟踪或强制用户更新Google服务的方法吗?

由于

例外:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test.app/com.test.app.activity.AcHome}: java.lang.NullPointerException: CameraUpdateFactory is not initialized
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2067)
    at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2092)
    at android.app.ActivityThread.access$600(ActivityThread.java:133)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1203)
    at android.os.Handler.dispatchMessage(Handler.java:99)
    at android.os.Looper.loop(Looper.java:137)
    at android.app.ActivityThread.main(ActivityThread.java:4794)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:511)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
    at dalvik.system.NativeStart.main(Native Method)
    Caused by: java.lang.NullPointerException: CameraUpdateFactory is not initialized
    at com.google.android.gms.internal.s.b(Unknown Source)
    at com.google.android.gms.maps.CameraUpdateFactory.aX(Unknown Source)
    at com.google.android.gms.maps.CameraUpdateFactory.newLatLngZoom(Unknown Source)
    at com.test.app.activity.AcHome.onCreate(AcHome.java:126)
    at android.app.Activity.performCreate(Activity.java:5008)
    at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
    at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2031)
    ... 11 more

1 个答案:

答案 0 :(得分:1)

如果用户拥有Google Play服务的更新版本,或者至少是您需要的版本,则可以在启动Google地图活动之前进行检查。

  

public static int isGooglePlayServicesAvailable (Context context)

     

验证是否已安装并启用了Google Play服务   设备,并且此设备上安装的版本不早于   这个客户要求的那个。

     

返回指示是否存在错误的状态代码。可以是一个   在ConnectionResult中跟随:SUCCESS,SERVICE_MISSING,    SERVICE_VERSION_UPDATE_REQUIRED ,SERVICE_DISABLED,SERVICE_INVALID,   DATE_INVALID。

如果你这样做'检查'并收到'update_required',那么你可以将用户重定向到该更新。

检查链接: https://developer.android.com/reference/com/google/android/gms/common/GooglePlayServicesUtil.html#isGooglePlayServicesAvailable(android.content.Context)

这是你在找什么?