2011-10-04 60 views
26

由於商業原因,我想將我的Android應用嚴格限制爲平板電腦設備。Android Manifest限制平板電腦

此刻,我可以通過設置限制應用蜂窩紙板設備:

android:minSdkVersion="11" 

但是Android(冰淇淋三明治)的下一個版本將有更高的版本號爲平板電腦和手機兩種版本的操作系統。

是否有任何清單屬性可以指定將其限制爲平板設備? (蜂窩或任何更新版本的平板電腦)

+0

這裏的[博客條目(http://android-developers.blogspot.com/2011/09/preparing -for-handsets.html)專門爲你。 – ernazm

回答

45

你會發現這個鏈接真棒:http://android-developers.blogspot.com/2011/09/preparing-for-handsets.html

的問題,就是我們所說的「平板電腦」是的定義不是evryone相同。 我想到的是與手機尺寸相同的愛可視5IT,但是用「平板電腦」名稱進行了品牌標識。戴爾Streak存在同樣的問題。

我personnaly不認爲這是一個平板電腦..

所以,如果你想限制到7,即5英寸的設備,你應該使用xlargeScreens和largeScreens。

(也有在HTC Flyer的錯誤 - 使用largeScreens,指責HTC 7 inches-)

我想這與清單屏幕尺寸打可以滿足你的需要:

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

enter image description here

+0

我不得不使用上面的代碼來阻止OS 3.2給我一個視圖組件。 popup(特定於3的東西)。2此刻) 機器人:xlargeScreens = 「真」 – DJPlayer

+0

我不是讓我的manifet文件的android此選項:requiresSmallestWidthDp = 「600」 機器人:compatibleWidthLimitDp = 「整數」 機器人:largestWidthLimitDp = 「整數」 我我正在使用Android 3.0版本... –

+1

用某物替換整數..或者刪除該行! –

2
   android:requiresSmallestWidthDp="600" 
       android:compatibleWidthLimitDp="integer" 
       android:largestWidthLimitDp="integer" 

請注意,Android Market目前不支持此屬性進行過濾(來自官方指南)。

使用支持屏幕大,XLARGE,現在你有兩個選擇:

  • 排除其中沒有手動片從市場大屏幕設備(+500 ...)

  • 你可以以編程方式測量寬度,並且如果寬度爲012則說用戶該應用不兼容。

雖然我們將不得不等待市場由Android過濾:requiresSmallestWidthDp = 「600」 ......

+0

*從現在開始,請小心使用此方法!具有全高清分辨率(1920x1080)的7英寸平板電腦的分辨率約爲315 ppi,因此是XHDPI/320設備。1080 /(320/160)等於540分辨率,並且不受sw600dp限制。從現在開始,7英寸@ 1080p平板電腦可能會很普遍(Nexus 7全高清謠言響了一聲鍾),所以告訴這樣的用戶他的平板電腦不是平板電腦會很尷尬! – davidcesarino