设计一个Android平板电脑专用应用程序

时间:2012-05-10 19:09:11

标签: android android-layout google-play

假设我想构建2套不同的平板电脑布局。 一个600dp(7“平板电脑1024x600)和一个720dp(10”平板电脑1280x720或1280x800)

据我所知,使用android 3.2,您现在可以指定平板电脑布局。我理解但是如何在Google Play上指定这是一款仅限平板电脑的应用。

有这个android:requiresSmallestWidthDp来指定所需的最小最小宽度。很好,但稍后在指南上你可以阅读

  

警告:Android系统不会关注此属性,因此它不会影响应用程序在运行时的行为方式。相反,它用于为您的应用程序启用Google Play等服务的过滤功能。但是,Google Play目前不支持此属性进行过滤(在Android 3.2上),因此如果您的应用不支持小屏幕,则应继续使用其他尺寸属性。

所以它没有被系统使用而且没有被Google Play使用......所以基本上它没用了,对吧?

“如果您的应用程序不支持小屏幕,则应继续使用其他大小属性。

确定。还有什么尺寸属性? 支持屏幕一个? Xlarge:屏幕至少为960dp x 720dp 大:屏幕至少为640dp×480dp

1024x600 7“平板电脑是一个”大“屏幕。 所以我基本上必须为640x480 res设计一个布局。因为如果我希望我的应用程序可用于2种不同尺寸的平板电脑,我必须启用大屏幕和xlarge屏幕。

所以我猜我可以像这样构建两套不同的布局

res/layout-sw600dp/main_activity.xml   # For 7” tablets (600dp wide and bigger)
res/layout-sw720dp/main_activity.xml   # For 10” tablets (720dp wide and bigger)

并完全省略为较小的屏幕指定布局,但随后应用程序会在较小的屏幕上崩溃。这是一种阻止应用程序运行的方法,确保不优雅。

有没有办法让该应用仅适用于Google-Play上的600dp及更高屏幕? 我很困惑。 我想制作一款仅限平板电脑的应用,即640x480手机无法在Google Play上下载。 我想我错过了很明显的东西。

1 个答案:

答案 0 :(得分:49)

要过滤您的应用 平板电脑在Google Play中运行ICS 你会在AndroidManifest中执行此操作:

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

 <uses-sdk
    android:minSdkVersion="14"
    android:targetSdkVersion="14" />

要获得HoneyComb平板电脑,您只需更改minSdk

即可
 <uses-sdk
    android:minSdkVersion="11"
    android:targetSdkVersion="14" />

因此,您现在说姜饼(2.3)及以下版本无法下载您的应用程序(因为它们不是平板电脑也不适用于平板电脑,即使它被黑客入侵)。

支持HoneyComb平板电脑(3.0)(因为&lt; 3.2忽略了requiresSmallestWidth属性)

没有手机正在运行蜂窝

支持ICS平板电脑,因为它会查看您的smallestWidth属性

最后ICS手机并不是因为我们说ICS使用了smallestWidth属性