签名的 apk 不适用于 7.1 以下的设备。*
Posted
技术标签:
【中文标题】签名的 apk 不适用于 7.1 以下的设备。*【英文标题】:Signed apk not working on devices below 7.1.* 【发布时间】:2019-07-10 10:21:41 【问题描述】:我前段时间添加了一个描述的问题, Signed APK, “App not installed” in some devices, and in some devices same apk is working fine 问题仍未解决
但刚才我注意到它在 7.1.* 及更高版本的 android 设备上运行良好,但低于它就无法运行。即使它不适用于带有 MarshMallow 的模拟器。但是我已经将最小 sdk 设置为 18,所以它应该可以正常工作。您可以在我提供的问题链接中查看 Manifest、Gradle(应用程序和项目级别)文件。
【问题讨论】:
还会报错吗? @coroutineDispatcher 是的,还没解决 @SamarpitShrivastava 请在所有设备上可用的清单中检查对于布局失败,您需要在堆栈跟踪中读取原因(等)的原因,直到找到原始错误。
根据堆栈跟踪,问题在于您的资源drawable/car_background
。
Caused by: android.content.res.Resources$NotFoundException: Resource "com.diginfoexpert.MBAutodeals:drawable/car_background" (7f070069) is not a Drawable (color or path): TypedValuet=0x1/d=0x7f070069 a=-1 r=0x7f070069
我不确定为什么 7.1 设备会出现此问题。根据 7.1 发行说明,唯一可能相关或不相关的提示是添加了对 circular launcher icons 的支持。我在 7.0 中也看不到任何东西。
结合其他可能性:
可能您正在使用矢量资产,但它的格式不正确。 也许您使用的是矢量资产而不是app:srcCompat
。
可能您在 API 特定的资源桶中有一个名为 car_background
的无效文件。
希望这能让你走上正轨。
【讨论】:
谢谢。不,该应用程序在我的设备上完美运行,即 Redmi 4、Nougat 7.1.2。它也适用于我朋友的 7.1.* 以上的设备。 ... 8 或以上 8... 但错误发生在低于 7.1 的设备上,如 7.0。在 MArshmallow 上,它正在安装,但在我打开它的那一刻就崩溃了。如果drawable/car_background有问题,它也应该在我的设备上崩溃了。但它在我的设备上运行良好。 如果资产不是根本原因,为什么堆栈跟踪说它是问题所在。帮自己一个忙,调查一下。至少从布局中删除资产并在故障设备上运行应用程序以将其排除... > 另外,看看Resources$NotFoundException
的情况。
我已经尝试删除资产及其用途,但仍然无法正常工作。 car_background 被用作初始屏幕的背景。我将其删除并放置一个空白的白色屏幕作为该视图的背景,但它仍然无法正常工作。错误是一样的,“未安装应用程序”。
^ 这是一个更有用的响应。您可能应该在启动时将崩溃分开,因为它是一个单独的问题(仍然可能与图像资产有关)。您也没有指出您目前正在尝试解决“未安装应用程序”。您是否浏览过此处的解决方案列表:***.com/questions/4226132/…?以上是关于签名的 apk 不适用于 7.1 以下的设备。*的主要内容,如果未能解决你的问题,请参考以下文章
proguard applymapping - mapping.txt 的更改不适用于下一个构建签名的 apk
部署到 iPhone 设备不适用于 Xamarin.iOS,“没有 iOS 签名身份匹配”