应用程序在启动时崩溃。 Debug apk工作正常但发布apk正面临这个问题。有人可以帮忙吗?
03-29 10:22:55.725 31420-31420/np.com.drac.ghtweather E/AndroidRuntime: FATAL EXCEPTION: main
Process: np.com.drac.ghtweather, PID: 31420
java.lang.RuntimeException: Unable to instantiate application np.com.drac.ghtweather.GHTapp: java.lang.InstantiationException: java.lang.Class<np.com.drac.ghtweather.GHTapp> cannot be instantiated
at android.app.LoadedApk.makeApplication(LoadedApk.java:977)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6030)
at android.app.ActivityThread.-wrap1(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1764)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6938)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
Caused by: java.lang.InstantiationException: java.lang.Class<np.com.drac.ghtweather.GHTapp> cannot be instantiated
at java.lang.Class.newInstance(Native Method)
at android.app.Instrumentation.newApplication(Instrumentation.java:1108)
at android.app.Instrumentation.newApplication(Instrumentation.java:1093)
at android.app.LoadedApk.makeApplication(LoadedApk.java:971)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6030)
at android.app.ActivityThread.-wrap1(Unknown Source:0)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1764)
at android.os.Handler.dispatchMessage(Handler.java:105)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6938)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:327)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1374)
答案 0 :(得分:0)
要在较新的Android工作室版本中构建release apk,首先禁用即时运行然后选择 “构建” - &gt;“构建APK(s)”选项,然后构建您的apk以使其正常运行。
这是构建apk的正确方法。试试这个,让我知道它是否有效。 执行此操作后,android studio会提示您指向apk的文件位置的链接。
答案 1 :(得分:0)
检查发布模式
if( BuildConfig.BUILD_TYPE.equalsIgnoreCase("release")) {
}
检查调试模式
if( BuildConfig.BUILD_TYPE.equalsIgnoreCase("debug")) {
}
或强>
检查你的menifest xml
<application
android:debuggable="true"
android:name=".YourApplication"
android:allowBackup="true"
android:icon="@mipmap/your_icon"
android:label="@string/app_name"
android:theme="@style/AppTheme"/>
或强>
buildTypes {
release {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android.txt'),
'proguard-rules.pro'
}
}
}
尝试此代码我遇到了同样的问题,这是我解决问题的解决方案,希望对您有所帮助。