我正在为我的React Native应用程序开发一个Android本机模块。我想检查是否启用了开发人员模式,并相应地打开或关闭WebView
中的Web内容调试。
这是我尝试过的:
boolean devSupportIsEnabled;
ReactActivity reactActivity = (ReactActivity) getModule().getActivity();
if (reactActivity != null) {
devSupportIsEnabled = reactActivity
.getReactInstanceManager()
.getDevSupportManager()
.getDevSupportEnabled();
} else {
devSupportIsEnabled = false;
}
不幸的是,由于ReactActivity.getReactInstanceManager()
是protected
,因此无法编译。
也有ReactBuildConfig.DEBUG
属性,但由于某些原因,它始终是false
。
还有其他方法吗?
答案 0 :(得分:0)
如果包ReactInstanceManager
的实例继承自ReactInstancePackage
:
public class MyPackage extends ReactInstancePackage {
@Override
public List<NativeModule> createNativeModules(ReactApplicationContext reactContext, ReactInstanceManager reactInstanceManager) {
// store the provided instance of ReactInstanceManager
this.reactInstanceManager = reactInstanceManager;
// ...
}
//...
}
此实例可稍后用于检查是否启用了开发模式:
boolean devModeIsEnabled = this.reactInstanceManager
.getDevSupportManager()
.getDevSupportEnabled();