【发布时间】:2019-01-10 22:57:34
【问题描述】:
我正在尝试在 Android Fragment 中使用 DJI UX SDK Map-widget。它在活动中工作正常,但是当我使用带有片段的小部件时它不起作用。
有谁知道问题出在哪里?
这是我已经实现的代码。
public class HomeFragment extends Fragment{
private MapWidget mapWidget;
public HomeFragment() {
}
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View inflate = inflater.inflate(R.layout.fragment_home, container, false);
mapWidget = inflate.findViewById(R.id.map_widget);
mapWidget = inflate.findViewById(R.id.map_widget);
mapWidget.initGoogleMap(new MapWidget.OnMapReadyListener() {
@Override
public void onMapReady(@NonNull DJIMap djiMap) {
}
});
return inflate;
}
@Override
public void onResume() {
super.onResume();
mapWidget.onResume();
}
@Override
public void onPause() {
super.onPause();
mapWidget.onPause();
}
@Override
public void onDestroy() {
super.onDestroy();
mapWidget.onDestroy();
}
@Override
public void onLowMemory() {
super.onLowMemory();
mapWidget.onLowMemory();
}
}
堆栈跟踪
原因:java.lang.NullPointerException:尝试在空对象引用上调用接口方法“void com.google.maps.api.android.lib6.impl.bo.o()” 在 com.google.maps.api.android.lib6.impl.cw.b(:com.google.android.gms.dynamite_mapsdynamite@12874021@12.8.74 (040306-204998136):21) 在 com.google.android.gms.maps.internal.w.a(:com.google.android.gms.dynamite_mapsdynamite@12874021@12.8.74 (040306-204998136):12) 在 fc.onTransact(:com.google.android.gms.dynamite_mapsdynamite@12874021@12.8.74 (040306-204998136):12) 在 android.os.Binder.transact(Binder.java:387) 在 com.google.android.gms.internal.zzeu.zzb(未知来源) 在 com.google.android.gms.maps.internal.zzk.onResume(未知来源) 在 com.google.android.gms.maps.MapView$zza.onResume(未知来源) 在 com.google.android.gms.dynamic.zzh.zzb(未知来源) 在 com.google.android.gms.dynamic.zzb.zza(未知来源) 在 com.google.android.gms.maps.MapView$zzb.zza(未知来源) 在 com.google.android.gms.dynamic.zza.zza(未知来源) 在 com.google.android.gms.dynamic.zza.onResume(未知来源) 在 com.google.android.gms.maps.MapView.onResume(未知来源) 在 dji.ux.widget.MapWidget.onResume(未知来源) 在 com.xxx.xxx.HomeFragment.onResume(HomeFragment.java)
【问题讨论】:
-
试试这个链接,最后它有一些解决方案-github.com/mapbox/mapbox-gl-native/issues/11121
-
@Thunder 我已经实现了 MapView 并且工作正常,但我想使用 DJI MapWidget。因为它们在地图上提供了更多功能。
标签: android android-fragments dji-sdk