Java 片段中的NullPointerException';s onCreateView仅在emulator上

Java 片段中的NullPointerException';s onCreateView仅在emulator上,java,android,android-fragments,android-emulator,nullpointerexception,Java,Android,Android Fragments,Android Emulator,Nullpointerexception,我在片段的onCreateView方法中得到了一个NullPointerException,但奇怪的是,这只发生在模拟器上。在设备上,应用程序运行正常 如果我在eclipse中为NullPointerException和debug设置一个断点,它将停在这一行: @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

我在片段的
onCreateView
方法中得到了一个
NullPointerException
,但奇怪的是,这只发生在模拟器上。在设备上,应用程序运行正常

如果我在eclipse中为NullPointerException和debug设置一个断点,它将停在这一行:

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

        View rootView = inflater.inflate(R.layout.fragment_map, container, false);

        mapTrackButton = (Button) rootView.findViewById(R.id.track_user_button);

        map = ((SupportMapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();

        map.setMyLocationEnabled(true); // This line
        // More code

    }

我认为谷歌地图在emulator上不可用

要修复错误,请执行以下操作:

if (map != NULL) {
    map.setMyLocationEnabled(true);
    // ...
}

您应该检查
getMap()
返回的内容。它可能返回了一些
null
;)我认为R.id.map中可能存在一些问题更具体地说,emulator不支持带有Google Maps API的Google Play服务,除非它运行的是4.2.2或更高版本。但是我的模拟器运行的是4.4.2?您使用的是“Android 4.2.2-API级别19”还是“Google API(Google Inc.)-API级别19”?从dymmeh链接看来,您需要使用“谷歌API(谷歌公司)-API级别19”。感谢您的建议,事实证明我没有在模拟器上使用谷歌API。。。