On React-Native,如何知道"Debug JS Remotely"
是否已启用?React native - 以编程方式检查是否启用了远程JS调试
我试图寻找在RN docs和各种NPM包,但无法找出如何...
On React-Native,如何知道"Debug JS Remotely"
是否已启用?React native - 以编程方式检查是否启用了远程JS调试
我试图寻找在RN docs和各种NPM包,但无法找出如何...
对于Android,在一个共享的喜好,你可以找到远程调试状态。 当我打开我的应用程序的sharedPreferences文件。
远程调试活跃
<map>
<boolean name="remote_js_debug" value="true" />
<boolean name="hot_module_replacement" value="true" />
<boolean name="reload_on_js_change" value="true" />
</map>
远程调试不活跃
<map>
<boolean name="remote_js_debug" value="false" />
<boolean name="hot_module_replacement" value="true" />
<boolean name="reload_on_js_change" value="true" />
</map>
所以(仅限Android),您可以使用这样一个模块:https://github.com/sriraman/react-native-shared-preferences检查远程调试活跃。
如何以编程方式检查是否启用了远程调试(今天在另一个SO问题上发现了这种特殊行为)。测试在RN 0.43和Chrome浏览器的调试器+阵营机调试:
const isDebuggingEnabled = (typeof atob !== 'undefined');
编辑:只注意到这个被问过了半年前:d ...好,我离开这里的后代。
跑遍了这个答案,但不满意检查atob
或被限制为android。如果调试器正在运行,我发现一个函数似乎是一个非常好的代理,这是一个名为__REMOTEDEV__
的全局变量。
就我而言,我希望看到的反应,本机调试器由应用程序发出的请求,我完整的代码如下:
/**
* When the debugger is connected, remove the XHR polyfill
* so that the chrome inspector will be able to see requests
*/
if (typeof global.__REMOTEDEV__ !== 'undefined') {
const _XHR = GLOBAL.originalXMLHttpRequest ?
GLOBAL.originalXMLHttpRequest :
GLOBAL.XMLHttpRequest;
global.XMLHttpRequest = _XHR;
}
'全球.__ REMOTEDEV__'是'undefined'即使在调试模式。 –