[英]APK not Installing in Kitkat?
当我通过Android Studio运行时,App可以在4.0版本以上的版本上正常运行...当我从app> build> output> apk中获取apk文件时,我试图安装时出现了以下错误...
注意:(相同的apk文件工作于5.0和6.0)
我尝试了所有Google建议。
错误:
致命异常:主进程:app.idea.com.ideadarpan,PID:1032 java.lang.RuntimeException:无法实例化应用程序app.idea.com.ideadarpan.commonclass.Idea_Urban:java.lang.ClassNotFoundException:未找到类路径上的“ app.idea.com.ideadarpan.commonclass.Idea_Urban”:DexPathList [[zip文件“ /data/app/app.idea.com.ideadarpan-1.apk"],nativeLibraryDirectories=[/data/app-lib /app.idea.com.ideadarpan-1、/vendor/lib、/system/lib、/system/lib/arm]]在android.app.LoadedApk.makeApplication(LoadedApk.java:516)在android.app.ActivityThread .handleBindApplication(ActivityThread.java:4553)在android.app.ActivityThread.access $ 1500(ActivityThread.java:139)在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:1353)在android.os.Handler.dispatchMessage (Handler.java:102)在android.os.Looper.loop(Looper.java:149)在android.app.ActivityThread.main(ActivityThread.java:5257)在java.lang.reflect.Method.invokeNative(本机方法) )的java.lang.reflect.Method.invoke(Method.jav a:515)在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:793)在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:609)在dalvik.system.NativeStart .main(本机方法)原因:java.lang.ClassNotFoundException:在路径:DexPathList [[zip file“ /data/app/app.idea]中找不到类” app.idea.com.ideadarpan.commonclass.Idea_Urban“ .com.ideadarpan-1.apk“],nativeLibraryDirectories = [/ data / app-lib / app.idea.com.ideadarpan-1,/ vendor / lib,/ system / lib,/ system / lib / arm]] android.app.Instrumentation的java.lang.ClassLoader.loadClass(ClassLoader.java:497)的dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)在android.app.Instrumentation的java.lang.ClassLoader.loadClass(ClassLoader.java:457) .newApplication(Instrumentation.java:975)在android.app.LoadedApk.makeApplication(LoadedApk.java:511)在android.app.ActivityThread.handleBindApplication(ActivityThread.java:4553)在android.app.ActivityThread.access $ 1500(ActivityThread) .java:139),位于android.app.ActivityThread $ H.ha android.os.Handler.dispatchMessage(Handler.java:102)位于android.os.Looper.loop(Looper.java:149)位于android.app.ActivityThread.main(ActivityThread.java)处的ndleMessage(ActivityThread.java:1353) :5257),位于java.lang.reflect.Method.invokeNative(本机方法),位于com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit)的java.lang.reflect.Method.invoke(Method.java:515)处.java:793),位于com.android.internal.os.ZygoteInit.main(ZygoteInit.java:609),位于dalvik.system.NativeStart.main(本机方法)
APP:Builde.gradle:我使用了PDF的四个JAR文件 ,也使用Covert Json转换为Excel,它位于lib文件夹中,我只需要使用相同的版本。
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
buildToolsVersion "26.0.0"
defaultConfig {
applicationId "app.idea.com.ideadarpan"
minSdkVersion 15
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
dexOptions {
jumboMode true
}
packagingOptions {
exclude 'META-INF/DEPENDENCIES.txt'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/notice.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/dependencies.txt'
exclude 'META-INF/LGPL2.1'
}
}
dexOptions
{
javaMaxHeapSize "2048M"
preDexLibraries = false
// here heap size give 4g i got this thing from https://groups.google.com/forum/#!topic/adt-dev/P_TLBTyFWVY
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support.constraint:constraint-layout:1.0.2'
compile 'com.squareup.retrofit2:retrofit:2.0.2'
compile 'com.squareup.okhttp3:logging-interceptor:3.0.1'
compile 'com.android.support:multidex:1.0.1'
compile 'com.android.support:appcompat-v7:25.2.0'
compile 'com.android.support:design:25.2.0'
compile 'com.android.support:cardview-v7:25.2.0'
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
compile 'io.reactivex.rxjava2:rxjava:2.1.3'
compile 'io.reactivex.rxjava2:rxandroid:2.0.1'
compile 'com.google.firebase:firebase-core:9.4.0'
compile 'com.google.firebase:firebase-messaging:9.4.0'
compile 'com.google.android.gms:play-services-auth:9.4.0'
compile 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0'
testCompile 'junit:junit:4.12'
}
apply plugin: 'com.google.gms.google-services'
应用类别:
public class Idea_Urban extends MultiDexApplication {
private static Idea_Urban idea_urban;
private SharedPreferences mSharedPreferences;
public static Context context;
public int recy_postion;
public static Idea_Urban getInstance() {
return idea_urban;
}
@Override
public void onCreate() {
super.onCreate();
idea_urban = this;
initSharedPreferences();
}
}
任何人都可以帮助我。
您提供的信息不一致。 在标题上,您说不是在KitKat(4.4)上运行,但在问题中,您说在4.0以上运行。
搭载Android 4.0,4.0.1,4.0.2是API 14级,这比你minSDK级(15)低。
如果您尝试在4.0、4.0.1、4.0.2设备上运行此应用程序,则它将无法正常运行。 您可以使用尝试的确切版本名称来更新问题。
您可以在gradle降低更改minSdkVersion
。
您是否尝试过通过禁用即时运行来进行构建? 转到文件->设置->构建,执行,部署->即时运行->取消选中即时运行复选框
这可能是原因。 摆放,检查也。 我对此不确定。 但是只要尝试一下:)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.