反应本机mapbox问题

时间:2019-10-15 14:41:44

标签: react-native react-native-mapbox-gl

我正在尝试在反义词中使用mapbox,据记录,我会遵循所有 但是我的应用程序崩溃了。 请找到以下例外情况以供参考 null不是对象(评估“ MapboxGL.StyleURL”)。 请帮助我see image for more info

1 个答案:

答案 0 :(得分:0)

我只是遇到了这个问题,也许这会对您有所帮助。

我已遵循官方文档来集成@react-native-mapbox-gl/maps,但它总是告诉我

null is not an object(evaluating 'MapboxGL.StyleURL')

对于版本7.0.8〜7.2.0和

Native part of Mapbox React Native libraries were not registered properly, double check our native installation guides.

版本8.0.0之后。

我在RCTMGLPackage中添加了MainApplication

public class MainApplication extends Application implements ReactApplication {

    private final ReactNativeHost mReactNativeHost =
            new ReactNativeHost(this) {
                @Override
                public boolean getUseDeveloperSupport() {
                    return BuildConfig.DEBUG;
                }

                @Override
                protected List<ReactPackage> getPackages() {
                    @SuppressWarnings("UnnecessaryLocalVariable")
                    List<ReactPackage> packages = new PackageList(this).getPackages();
                    packages.add(new MainReactPackage());
                    packages.add(new RCTMGLPackage());
                    return packages;
                }

                @Override
                protected String getJSMainModuleName() {
                    return "index";
                }
            };

    @Override
    public ReactNativeHost getReactNativeHost() {
        return mReactNativeHost;
    }
}

但每次都无法正常工作。

检查现有代码后,它还有其他位置可在Activity中添加本机模块包。

MainActivity中:

mReactInstanceManager = ReactInstanceManager.builder()
                .setApplication(this.getApplication())
                .setBundleAssetName("index.android.bundle")
                .setJSMainModulePath("index")
                .addPackage(new MainReactPackage())
                .addPackage(new RCTMGLPackage())
                .setCurrentActivity(this)
                .setUseDeveloperSupport(BuildConfig.DEBUG)
                .setInitialLifecycleState(LifecycleState.RESUMED)
                .build();

不确定您是否有同样的情况,这可能会对您有所帮助。