[英]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.