Android 通过特定设备限制应用程序的销售?

Android 通过特定设备限制应用程序的销售?,android,google-play,device,Android,Google Play,Device,是否可以通过特定设备或设备功能(屏幕分辨率、处理器、磁盘空间等)限制Android市场上应用程序的销售 我知道我会被人们轰炸,他们说如果你设计好你的应用程序,它应该可以在任何大小的设备上运行。这一切都很好,但也有一些原因,您可能仍然希望通过功能集进行限制 一个容易想到的原因是屏幕分辨率。显然,并不是所有的应用程序都适用于所有的屏幕尺寸,特别是如果你有很多图像是为了充分利用更大的屏幕分辨率而精心制作的。为了说明这一点,想象一下,明天一款新的Android设备将以100x100的屏幕分辨率面世。很明

是否可以通过特定设备或设备功能(屏幕分辨率、处理器、磁盘空间等)限制Android市场上应用程序的销售

我知道我会被人们轰炸,他们说如果你设计好你的应用程序,它应该可以在任何大小的设备上运行。这一切都很好,但也有一些原因,您可能仍然希望通过功能集进行限制

一个容易想到的原因是屏幕分辨率。显然,并不是所有的应用程序都适用于所有的屏幕尺寸,特别是如果你有很多图像是为了充分利用更大的屏幕分辨率而精心制作的。为了说明这一点,想象一下,明天一款新的Android设备将以100x100的屏幕分辨率面世。很明显,有些应用程序无法在此设备上以最佳方式运行。作为一名开发人员,我希望确保我的应用程序只在具备支持最佳体验所需功能的设备上运行

我不想把它卖给使用某些设备的用户,以防止我经常在其他应用程序上看到负面评价和评论。我宁愿在少量设备上提供完美体验,也不愿在所有设备上都提供不完美体验


Android Market是否提供了处理此问题的方法?

我认为您可以在AndroidManifest文件中执行您需要的操作。例如,您可以选择仅支持超大屏幕分辨率,如下所示:

<supports-screens android:resizeable="false"
                  android:smallScreens="false" 
                  android:normalScreens="false"
                  android:largeScreens="false"
                  android:xlargeScreens="true"
                  android:anyDensity="true" />

这些尺寸在下面的链接中定义,例如“正常”是中等密度的HVGA。阅读下面的链接了解更多详细信息

“如果您的应用程序不支持小屏幕,那么系统无法在小屏幕上正常运行,因此外部服务(如Android Market)不应允许用户在此类屏幕上安装应用程序。”

您可能还需要设置元素,尽管我自己没有尝试过,但它似乎符合您的要求:

“Android系统不读取manifest元素(无论是在安装时还是运行时)。此元素仅供参考,可供外部服务(如Android Market)使用。”为了更好地了解应用程序与特定屏幕配置的兼容性,并为用户启用筛选。此元素中未声明的任何屏幕配置都是应用程序不兼容的屏幕。因此,外部服务(如Android Market)不应将应用程序提供给具有此类屏幕的设备。”

您还需要在此处阅读更多信息,了解市场对所有这些信息的作用:


由于我没有尝试过这一点,我不清楚你的应用程序是否应该同时使用我上面提到的两种元素,但market filter页面可能会解释使用哪一种元素。

这一点在中有很好的介绍,特别是“请参阅”框中链接的页面。

AndroidManifest是你指定该信息的地方。特别是关于权限和屏幕大小的部分。遵循@mfisch的指示。