Android:仅支持智能手机

我的应用程序是在谷歌播放生活。 我只想让它与智能手机兼容。为此我已经这样做了…

<uses-sdk android:minSdkVersion="4"/> <supports-screens android:largeScreens="true" android:normalScreens="true" android:smallScreens="true" android:xlargeScreens="false" /> 

而我的问题是市场不过滤平板电脑(如三星tab1 mdpi平板电脑)。一件事情是一些手机像WVGA800 *(480×800)(mdpi),WVGA800 **(480×800)(ldpi)在大屏幕和一些平板电脑也来这个范围。所以我想让手机不是平板电脑那么应该是什么解决scheme?

我从这里find了一些帮助http://developer.android.com/guide/topics/manifest/supports-screens-element.html

  <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="16" /> <supports-screens android:largeScreens="true" android:largestWidthLimitDp="320" android:normalScreens="true" android:smallScreens="true" android:xlargeScreens="false" /> 

它会在市场上工作?? ..我问这种解决scheme,如果任何人有这方面的经验。我的问题是我不能通过上传新版本的应用程序来testing。请帮助我..

替代解决scheme将做。

提前致谢。

Solutions Collecting From Web of "Android:仅支持智能手机"

你有没有添加“兼容屏幕”标签到你的AndroidManifest.xml? 这是Google Play用于根据屏幕尺寸过滤设备的内容。

 <compatible-screens> <!-- small size screens --> <screen android:screenSize="small" android:screenDensity="ldpi" /> <screen android:screenSize="small" android:screenDensity="mdpi" /> <screen android:screenSize="small" android:screenDensity="hdpi" /> <screen android:screenSize="small" android:screenDensity="xhdpi" /> <!-- all normal size screens --> <screen android:screenSize="normal" android:screenDensity="ldpi" /> <screen android:screenSize="normal" android:screenDensity="mdpi" /> <screen android:screenSize="normal" android:screenDensity="hdpi" /> <screen android:screenSize="normal" android:screenDensity="xhdpi" /> <!-- large screens --> <screen android:screenSize="large" android:screenDensity="hdpi" /> <screen android:screenSize="large" android:screenDensity="xhdpi" /> </compatible-screens> 

通过不包括android:screenSize =“xlarge”,你的应用程序将不会显示为10.1“的平板电脑。android:screenSize =”large“有点棘手。它可能是7”的设备,所以Galaxy Tab 7“陷入但我不确定新款Galaxy S3或Galaxy Nexus与4.75“屏幕是否属于”大“屏幕类别。

尝试将上面的代码片段添加到AndroidManifest.xml中,如果Google Play在受支持的设备列表中包含7个“平板电脑”,则可以随时删除它们。

所有的Android平板电脑都运行在HONEYCOMB( level 11, 12, 13 )。 您可以禁止在Honeycomb上进行安装。 现在,您可能想知道如何使用min-sdkmax-sdk说明符从API级别序列的中间(即:11,12和13中的1-15)中排除一些特定的API级别,因为它们不支持范围。

这是解决scheme:

您可以在将其发布到Google Play时执行此操作。 在Android开发者控制台上传应用程序到APK文件选项卡并检查高级模式。 它可以让你上传2个不同的SDK级别的apk文件。 但是不要忘记为它们设置不同的版本代码。

控制台中的所有统计信息都将汇总为两个apk文件,因为它是一个。

所以,你可以创build两个apks(其中一个支持1到10级,另一个支持14和15级),这将阻止你的应用程序安装在平板电脑上。 🙂

资源

正如你所发现的那样,没有确切的或最好的方法。

  • 清单中的configuration
  • Google Play中的设备filter

此外,请保留Google Play上显示的应用程序名称中的电话号码等Google Play特别注意事项。

对于大多数7“屏幕下大屏幕function下,您的应用程序可以使用7”平板电脑。 如果你有两个APK上传,谷歌播放照顾正确的APK为您的设备。

如果您的应用程序仅限于手机,并明确使用Tablet上不可用的手机function,则可以添加代码检查,即使已安装,也不允许用户进一步移动。

由于您对平板电脑不感兴趣,因此您不在乎。

最佳做法是假设7“大屏幕手机下的平板电脑应该考虑在努力。由于Android平板电脑的所有function,包括呼叫(VOIP)可用。