微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

迁移到Android Studio 3后,应用无法在Android 7.1以下的设备上运行

升级Android Studio 3后,我们尝试的Android 5和7设备上无法安装应用程序 – 如果我自己发送APK,则说“应用程序未安装”,如果我尝试从AS构建,则重新启动手机日志中的内存块异常.

但是,应用程序可以安装在运行这些Android版本的模拟器上.

应用程序可以安装在我们测试的Android 7.1.1和8上.

尝试启用和禁用Java 8兼容性 – 结果相同.

Minify已启用.另外在2个模块中也可以使用它.

compileSdkVersion 26
buildToolsversion '26.0.2'

defaultConfig {
    minSdkVersion 21
    targetSdkVersion 26
    useLibrary 'org.apache.http.legacy'
    applicationId 'com.myapp.android'
    versionName "6.0.0.2"
    versionCode 6002
    multiDexEnabled true
    testInstrumentationRunner "com.android.test.runner.MultiDexTestRunner"
}

这是错误消息

ime: Calling main entry com.android.commands.am.Am
11-01 11:03:20.807 26024-26589/system_process I/ActivityManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10000000 cmp=com.myapp.android/.app.MainActivity_} from uid 2000 on display 0
11-01 11:03:20.811 26024-26589/system_process A/libc: invalid address or address of corrupt block 0x39 passed to dlfree
11-01 11:03:20.811 26024-26589/system_process A/libc: Fatal signal 11 (SIGSEGV),code 1,fault addr 0xdeadbaad in tid 26589 (Binder_8)
11-01 11:03:20.913 14726-14726/? I/DEBUG: *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
11-01 11:03:20.913 14726-14726/? I/DEBUG: Build fingerprint: 'motorola/condor_retgb/condor_umts:4.4.4/KXC21.5-40/46:user/release-keys'
11-01 11:03:20.913 14726-14726/? I/DEBUG: Revision: '33456'
11-01 11:03:20.913 14726-14726/? I/DEBUG: ABI: 'arm'
11-01 11:03:20.914 14726-14726/? I/DEBUG: pid: 26024,tid: 26589,name: Binder_8  >>> system_server <<<
11-01 11:03:20.914 14726-14726/? I/DEBUG: signal 11 (SIGSEGV),code 1 (SEGV_MAPERR),fault addr 0xdeadbaad
11-01 11:03:20.945 14726-14726/? I/DEBUG: Abort message: 'invalid address or address of corrupt block 0x39 passed to dlfree'
11-01 11:03:20.945 14726-14726/? I/DEBUG:     r0 00000000  r1 b6ee4dec  r2 deadbaad  r3 00000000
11-01 11:03:20.945 14726-14726/? I/DEBUG:     r4 00000039  r5 b6ee60d4  r6 98697000  r7 00000041
11-01 11:03:20.945 14726-14726/? I/DEBUG:     r8 9e566bfc  r9 9e566cbc  sl b6bd85d2  fp b6bd85db
11-01 11:03:20.945 14726-14726/? I/DEBUG:     ip 80808000  sp 9e566ba8  lr b6eb5e2f  pc b6eb5e30  cpsr 60010030
11-01 11:03:20.945 14726-14726/? I/DEBUG: backtrace:
10-31 22:41:28.134 254-254/? I/DEBUG:     #00 pc 00028e30  

/system/lib/libc.so (dlfree+1239)
10-31 22:41:28.134 254-254/? I/DEBUG:     #01 pc 0000f0c3  /system/lib/libc.so (free+10)
10-31 22:41:28.134 254-254/? I/DEBUG:     #02 pc 00012dd9  /system/lib/libandroidfw.so (android::ResstringPool::uninit()+38)
10-31 22:41:28.134 254-254/? I/DEBUG:     #03 pc 00013b33  /system/lib/libandroidfw.so (android::ResXMLTree::uninit()+12)
10-31 22:41:28.134 254-254/? I/DEBUG:     #04 pc 00013b51  /system/lib/libandroidfw.so (android::ResXMLTree::~ResXMLTree()+4)
10-31 22:41:28.134 254-254/? I/DEBUG:     #05 pc 00010843  /system/lib/libandroidfw.so (android::AssetManager::getPkgName(char const*)+258)
10-31 22:41:28.134 254-254/? I/DEBUG:     #06 pc 000108a5  /system/lib/libandroidfw.so (android::AssetManager::getBasePackageName(unsigned int)+68)
10-31 22:41:28.134 254-254/? I/DEBUG:     #07 pc 00080de7  /system/lib/libandroid_runtime.so
10-31 22:41:28.134 254-254/? I/DEBUG:     #08 pc 00270eef  /data/dalvik-cache/arm/system@framework@boot.oat

编辑:我发现这里可能与https://issuetracker.google.com/issues/64434571有关

最佳答案
事实证明,这是CyanogenMOD / LineageOS中的一个错误,可能还有其他自定义ROM修改了他们不应修改内容.

解决方法关闭AAPT2(但我不知道它的缺点是什么)

谷歌已经在构建工具27中解决了这个问题,但我不知道我们是否可以使用它?

https://issuetracker.google.com/issues/64434571

编辑:如果您仍然无法在未直接构建的某些设备上安装您的应用,请首先使用File – >无效缓存/重启,然后生成 – >干净,最重要的是 – 不要使用你点击RUN获得的APK文件,使用你可以通过Build创建的那个 – >建立APK(s)

原文地址:https://www.jb51.cc/android/430165.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐