应用过滤与多APK

小米应用商店支持GooglePlay的应用过滤与MultipleAPK(多APK)规则,按照符合Google规范开发的Android的应用,可以分发给合适的用户,避免无法支持的设备下载到您的应用,影响应用口碑与评分。

应用商店的过滤

随着MIUI支持的设备越来越多,您也许会开发仅支持部分设备的应用,比如仅支持Android4.0以上系统,或者仅支持高通的GPU。应用过滤可以满足这方面的需求,保证您的应用在合适的设备上展示和分发。 目前,小米应用商店支持基于Manifest文件内容的的过滤项如下: (您可以点击链接查看Google官方的文档)

supports-screens——屏幕尺寸
supports-screens项声明了您的应用支持的屏幕尺寸等信息,如无特殊需求,可以无需指定,默认支持各种尺寸的设备。小米、红米系列手机均为normal尺寸

compatible-screens——兼容屏幕类型
【Google官方建议: 正常情况下,您不需要使用本项目】compatible-screens项可以详细声明应用兼容屏幕的尺寸、像素密度,考虑到Android设备分裂比较严重,除非您明确的了解本项目,请不要使用本项目,错误的声明了本项目,可能导致大量的用户无法下载您的应用。

uses-sdk——Android系统版本
uses-sdk项声明了您的应用支持的API Level系统版本。您可以用android:minSdkVersion声明支持的最低系统版本。同时Google官方建议不要声明android:maxSdkVersion,该属性可能导致使用未来发布的Android系统的用户无法下载您的应用。您可以在这里找到Android版本号和API Level的对照关系

supports-gl-texture——OpenGL纹理压缩
如果您需要支持高通、英伟达等不同GPU的OpenGL纹理压缩,需要声明此项。详情请查看Google官方文档

基于上述4项元素,您可以自由的指定应用支持的设备类型。不过对于绝大多数应用开发者来说,可能仅需要声明uses-sdk项即可。添加较多的限制可能会导致用户无法看到、下载您的应用

如下是一些错误实例,请勿模仿:

多APK支持 - Multiple APK

Google官方强烈建议用一个APK支持全部机型和版本的设备,但是在实际开发过程中,开发者因为APK包尺寸、系统支持等原因,需要为不同的设备提供不同的APK包。为了满足这一需求,Google设计了Multiple APK机制,通过多APK机制,可以实现以下功能:

多APK发布会增加后续开发者维护的成本,因此强烈建议用一个APK支持全部机型。仅当您的APK因为不同尺寸的资源文件而过大时考虑采用多APK机制。

如果您确定要使用多APK机制,请务必仔细阅读这篇文章。其中会提到一些重点注意事项:

在规划中,未来我们会支持基于上述多APK机制,目前已经实现支持基于< uses-sdk>的多APK。您可以在发布应用的时候,选择发布多APK应用,完成发布。

关于应用过滤与多APK支持,Google官方主要提供了以下文档:

Filters on Google Play: http://developer.android.com/google/play/filters.html

Multiple APK Support: http://developer.android.com/google/play/publishing/multiple-apks.html

Android Compatibility: http://developer.android.com/guide/practices/compatibility.html