React Native Android-如何仅在设备上以调试模式运行?

React Native Android-如何仅在设备上以调试模式运行?,第1张

概述我正在尝试在设备上以调试模式运行我的reactnativeandroid应用,而无需在dev框上运行dev服务器.我已经在两个平台上都使用了debug变体/方案来简化我们应用的“staging”版本,因为我已经读到,reactnative对发行和调试以外的构建模式不是超级友好.在iOS方面,我能够按如下方式修改

我正在尝试在设备上以调试模式运行我的react native android应用,而无需在dev框上运行dev服务器.我已经在两个平台上都使用了deBUG变体/方案来简化我们应用的“ staging”版本,因为我已经读到,react native对发行和调试以外的构建模式不是超级友好.

在iOS方面,我能够按如下方式修改AppDelegate.m …基本上,如果它是调试版本,并且是由buddybuild构建的,则不要为Js捆绑寻找开发机,而要寻找设备:

#ifdef DEBUGNSDictionary *infoPListDict = [[NSBundle mainBundle] infoDictionary];if (infoPListDict[@"BUDDYBUILD_BUILD_ID"]) {  // deployed via buddybuild, don't use localhost  JsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"Jsbundle"];} else {  JsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle?platform=ios&dev=true"];}#else  JsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"Jsbundle"];#endif

…我正在寻找一种在androID上执行此 *** 作的方法.我有需要的buddybuild代码,因此不用担心,我只想知道如何像上面在AppDelegate.m中为iOS所做的那样,以编程方式更改androID上Js包的位置.现在,所有与Js捆绑包在androID上的位置相关的代码似乎都在react-native包本身中,而我不希望破解它以使其正常工作.

如果我可以提供更多信息,请告诉我.

解决方法:

在AndroID上,您需要修改androID / app / build.gradle.

在“ ../../node_modules/react-native/react.gradle”行中进行应用之前,您需要告诉打包程序捆绑Js资产,并在部署APK时将其包括在内.

例如:

project.ext.react = [    bundleInBuddybuild: true,]

语法为bundleIn ${productFlavor} ${buildType}

或者,如果您只是想将其用于调试版本:

project.ext.react = [    bundleInDeBUG: true,]
总结

以上是内存溢出为你收集整理的React Native Android-如何仅在设备上以调试模式运行?全部内容,希望文章能够帮你解决React Native Android-如何仅在设备上以调试模式运行?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1090688.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存