Google Play服务版本问题

时间:2013-12-06 13:31:07

标签: android google-maps google-play-services

我遇到了问题 - 我在我的应用程序中使用Google Maps v2。为了使用它,我明显将Google Play服务lib添加到我的项目中。

我的设备上的所有内容都运行良好但是使用较旧的Android会崩溃,例如,我的应用程序工作在4.3但不适用于4.0.3。

我已经发现问题 - 在这些设备上Google Play服务不是最新版本。 在Android SDK工具中,我有Google Play服务修订版13.当我安装了Google Play服务更新时,我的应用程序运行正常。

那么解决这个问题的最佳方法是什么? 可能是我需要使用一些较旧的方法从MapFragment获取地图? 这是我的代码。

public class CustomMapFragment extends MapFragment {
    private GoogleMap mMap;

    public void init() {
        mMap = getMap(); <----------- NPE when launched on older Android devices
        mMap.setMyLocationEnabled(true);
        mMap.setTrafficEnabled(true);
    }

    @Override
    public void onResume() {
        super.onResume();
        init();
    }
}

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

为了让Google Map API V2能够在旧设备上运行,您必须使用SupportMapFragment对象而不是MapFragment对象。这就是你需要扩展的内容。

您必须使用SupportFragmentManager来获取它的实例,而不是通常使用的FragmentManager