0

我正在尝试在 reactnative 中使用 mapbox,据记录,除了我的应用程序中断之外,我什么都关注。请为您的参考找到以下异常 null 不是对象(评估“MapboxGL.StyleURL”)。 请帮我

4

1 回答 1

-1

我只是有这个问题,也许这会对你有所帮助。

我已按照官方文档进行集成@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 之后。

我已经添加RCTMGLPackageMainApplication

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中添加Native Module包。

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();

不知道你是否有同样的情况,也许这会对你有所帮助。

于 2020-06-11T06:45:46.843 回答