我刚刚在Play Store上发布了我的应用程序的更新。这个消息主要来自Appcelerator,我从SDK3.5.2更新到SDK5.5.1。我的manifest.xml文件包含以下内容:
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="23"/>(3种屏幕大小:小,大,xlarge)我以前的版本可以兼容开发控制台中列出的所有设备(我有android:targetSdkVersion="16"),但是现在我错过了相当一半的设备,我不知道为什么。
看起来Android4.4设备(也许是以前的版本)不再兼容了。
我该怎么看才能修好它?
发布于 2016-10-25 14:50:36
它可能不是版本,而是您正在使用的特性。最简单的检查方法是为android模拟器或设备编译应用程序,然后检查AndroidManifest.xml文件的build/android文件夹。当你看里面的时候,你会看到你的应用程序对android的权限和功能有什么要求。
例如,如果您将代码放在应用程序中“打电话”,则appcelerator将需要启用android.hardware.telephony功能。因此,市场上的每一款平板电脑都将被排除在外,因为它们没有电话功能。您可以在这里查看android中可用的功能列表:https://developer.android.com/guide/topics/manifest/uses-feature-element.html
比较清单文件中的列表,看看可能导致设备删除的原因。例如,我使用一个读取条形码的模块,该模块自动启用清单中的自动对焦和闪存。如果我发布,许多平板电脑也会被排除在外,因为它们没有闪存,所以我必须手动编辑我的AndroidManifest文件并从以下位置更改行:
<uses-feature android:name="android.hardware.camera.autofocus"/>
<uses-feature android:name="android.hardware.camera.flash"/>至
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false"/>
<uses-feature android:name="android.hardware.camera.flash" android:required="false"/>一旦您有了固定的清单文件,就可以通过将清单复制到platform/android文件夹来手动强制Appcelerator使用清单。要意识到,每次编译到play商店时,您都需要这样做。
射线
https://stackoverflow.com/questions/40237286
复制相似问题