前段时间我添加了用于登录我的gradle构建的配置(并且可能做了一些其他git没有得到的东西或其他什么)。但是自从我第一次成功发布版本之后的那一刻,我再也无法构建调试版本了。
当我在logcat中进行正常的调试构建(如之前使用react-native run-android
或Android Studio调试版本)时会发生什么:
unable to load script from assets 'index.android.bundle'
应用程序立即崩溃。 (当设置adb reverse和所有这些东西,甚至使用模拟器时;还是我的开发服务器也启动了。)
这里和GitHub上的一些人说,这可能会有所帮助:
react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
是的,我的应用程序没有崩溃,我可以测试它,但我无法打开开发人员菜单。无论是摇动我的设备还是使用命令:
adb shell input keyevent 82
在iOS上一切正常。我检查并区分我的gradle文件,但无法检测到任何问题或配置错误。
我想要的是一个有效的调试版本,它可以加载开发人员服务器中的所有内容,以及一个具有本机反应原理的所有优秀功能的工作开发人员菜单。
RN版本:0.49.1(和之前的0.47.1)
提前谢谢!
答案 0 :(得分:10)
有时这是MainApplication.java
中导入错误的问题,您必须检查导入中是否有* .BuildConfig。如果是,请删除它然后它应该工作。
答案 1 :(得分:0)
首先从public class AllFieldsRequiredAttribute : TypeLevelAspect, IAspectProvider
{
IEnumerable<AspectInstance> IAspectProvider.ProvideAspects(object targetElement)
{
Type type = (Type)targetElement;
return type.GetFields().Select(
m => new AspectInstance(m, new ObjectConstruction(typeof(RequiredAttribute))));
}
}
[AllFieldsRequired]
public class Foo
{
public string Bar;
public object Baz;
}
中删除以.BuildConifg
结尾的导入
然后,使用此命令解决问题
MainApplication.java