如何在Android設備搖一搖彈框中增加新的選項並實現點擊功能

如何在Android設備搖一搖彈框中增加新的選項並實現點擊功能

打開Android項目的Application,找到ReactNativeHost,重寫ReactNativeHost的createReactInstanceManager方法,具體實現如下:

  @Override
        protected ReactInstanceManager createReactInstanceManager() {
            ReactMarker.logMarker(ReactMarkerConstants.BUILD_REACT_INSTANCE_MANAGER_START);
            ReactInstanceManagerBuilder builder = ReactInstanceManager.builder()
                    .setApplication(getApplication())
                    .setJSMainModulePath(getJSMainModuleName())
                    .setUseDeveloperSupport(getUseDeveloperSupport())
                    .setRedBoxHandler(getRedBoxHandler())
                    .setJavaScriptExecutorFactory(getJavaScriptExecutorFactory())
                    .setUIImplementationProvider(getUIImplementationProvider())
                    .setJSIModulesPackage(getJSIModulePackage())
                    .setInitialLifecycleState(LifecycleState.BEFORE_CREATE);

            for (ReactPackage reactPackage : getPackages()) {
                builder.addPackage(reactPackage);
            }

            String jsBundleFile = getJSBundleFile();
            if (jsBundleFile != null) {
                builder.setJSBundleFile(jsBundleFile);
            } else {
                builder.setBundleAssetName(Assertions.assertNotNull(getBundleAssetName()));
            }
            ReactInstanceManager reactInstanceManager = builder.build();
            reactInstanceManager.getDevSupportManager().setDevSupportEnabled(true);
            reactInstanceManager.getDevSupportManager().addCustomDevOption("新功能", new DevOptionHandler() {
                @Override
                public void onOptionSelected() {
                    Toast.makeText(MainApplication.this, "我是新功能", Toast.LENGTH_SHORT).show();
                }
            });
            ReactMarker.logMarker(ReactMarkerConstants.BUILD_REACT_INSTANCE_MANAGER_END);
            return reactInstanceManager;
        }
    };

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章