我的Android進階之旅------>Android SDK支援的組態識別符(有用的參考檔案),androidsdk

來源:互聯網
上載者:User

我的Android進階之旅------>Android SDK支援的組態識別符(有用的參考檔案),androidsdk

Android SDK支援的配置標緻符


組態識別符
標識符值
描      述

MCC   MNC

例子:

mcc310;

MCC310-MNC004;

MCC208-MNC00


MCC(移動國家代碼,Moblie Country Code)和可選的MNC(移動網路代碼,Moblie Network Code)是從SIM卡中讀取的資訊。例如,mcc310表示美國的電訊廠商,mcc310-mnc004表示美國的Verizon電訊廠商,mcc208-mnc00標記法國的Orange電訊廠商。

如果裝置使用無線串連(Radio Connection)(GSM手機),MCC會沖SIM卡讀取,同時MNC從裝置所串連的網路中讀取。

你也可以單獨使用MCC(例如,在應用程式中可以包含特定國家的法律資源)。如果只想知道語言,可以使用語言和地區標識符(下面會討論)。如果你覺得使用MCC和MNC標識符,你應該仔細測試它是否可以正常運行。


語言(Language)

地區(Region)


例子:

zh-rCh;

en;

fr;

en-rUS;

rf-rFR;

rf-rCA;


語言識別項被定義為兩個字母的代碼,詳細定義可查閱ISO 639-1.地區標識符是可選的,也可採用了兩個字母的代碼(但要在代碼前面加一個小寫“r”),詳細定義可查閱ISO 3166-1-alpha-2的相關內容。

語言和地區都不區分大小寫。“r”首碼用於區分某個地方,但不能單獨指定一個地區,也就是說,指定地區必須先指定語言。

如果使用者和地區在系統設定中改變了當前的語言,程式在運行時就會改變自身的語言(選擇與當前語言相匹配的資來源目錄讀取資源)


螢幕尺寸

(Screen Size


small;

normall;

large;

xlarge。


small:使用低密度的QVGA螢幕。這種螢幕與HVGA的寬度相同,但比HVGA的高度小。HVGA的螢幕比例是2:3,而QVGA是3:4。QVGA的最小解析度約為320×426,例如,QVGA低密度和VGA高密度都接近這個解析度。

normal:使用VGA中密度螢幕。螢幕的近似解析度為480×640.例如,VGA和WVGA的中密度螢幕都接近這個解析度。

xlarge:基於高密度的螢幕。螢幕解析度約為720×960.這種大解析度要求API Level至少為9,也就是說Android 3.1及以上版本才支援這種大解析度的螢幕。

最低API Level:4(Android 1.6)


螢幕外觀

(Screen Aspect)


long;

notlong。


long:看上去較長的螢幕,如WQVGA、WVGA、FWVGA。

notlong:看上去不長的螢幕,如QVGA、HVGA、VGA。

螢幕外觀標識符只是基於螢幕長寬比較的,與螢幕的方向無關。API Level的最小值:4


螢幕方向

(Screen Orientation)


port;

land。


port:設定垂直(或稱portrait)方向;

land:設定水平(或稱landscape)方向。


底座模式(Dock Mode) car 
desk
car:裝置放在器材座地下
desk:裝置放在案頭底座上
API Level最小值:8

夜間模式

(Night Mode)


night;

notnight。


night:夜間;

notnight:白天。

最低APILevel:8(Android 2.2)


螢幕像素密度(Screen pixel density[dpi])


ldpi;

mdpi;

hdpi;

xhdpi;

nodpi;
tvdpi。

ldpi:低密度聘僱,密度約為120dpi;

mdpi:中密度(傳統的HVGA)螢幕,密度約為160dpi;

hdpi:高密度螢幕,密度約為240dpi;

xhdpi:擴充高密度螢幕,密度約為320dpi。API Level的最小值8(Android 2.2);

nodpi:應用於不需要更具螢幕密度進行展開的位元影像資源;

tvdpi:介於mdpi和hdpi之間的螢幕密度(213dpi左右)。該螢幕密度通常用於智能電視中。API Level的最小值為13(Android 3.2)。


觸控螢幕幕類型

(Touchscreen Type)


notouch;

stylus

finger。


notouch:設定不支援觸控螢幕。

stylus:裝置支援手寫筆的觸控螢幕幕(不支援手指觸摸)

finger:設定支援觸控螢幕幕(可能只支援手指,也可能支援手寫筆和手指都支援)。


可用鍵盤

(Keyboard Availability)


keysexposed;

keyshidden;

keyssoft。


keysexposed:設定鍵盤可用(包括軟體盤和物理鍵盤)。裝置鍵盤可分為如下2種情況:

l 只有軟鍵盤,沒有物理鍵盤或物理鍵盤被禁用。該值只用於軟鍵盤。

l 只有物理鍵盤,沒有軟鍵盤或軟鍵盤被禁用。該值只用於物理鍵盤。

keyshidden:裝置有一個物理鍵盤,但該物理鍵盤被隱藏(未被拉出),並且該裝置沒有可用的軟鍵盤。

keyssoft:裝置有一個軟鍵盤,不管該軟鍵盤是否可以。


首選文本輸入方式

(Primary Text Input Method)


nokeys;

qwerty;

12key。


nokeys:裝置沒有用於文本輸入的物理按鍵;

qwerty:裝置有一個物理querty(與標準電腦鍵盤相同)鍵盤,不管這個物理鍵盤對使用者是否可用;

12key:裝置有一個12鍵的物理鍵盤,不管這個物理鍵盤是否對使用者有用。


是否有導航鍵

(Navigation key availability)


navexposed;

navhidden。


navexposed:有導航鍵,並且使用者可以使用這個導航鍵;

navhidden:導航鍵不可用(例如翻蓋手機沒有把蓋子開啟)。


首選非借出摸導航發送

(Primary Non-touch Navigation Method)


nonav;

dpad;

trackball;

wheel。


nonav:裝置沒有非觸摸的導航方式;

dpad:設別通過十字方向鍵(d-pad)導航;

trackball:裝置通過軌跡球導航;

wheel:裝置通過滑輪導航。


平台版本

(Platform Version[API Level])


例子:

v3;

v4;

v7;

等等


API Level 的最低版本。例如,v1表示API Level 1(要求Android 1.0及以上的版本);v7表示API Level 7(要求Android 2.1及以上的版本)。

注意:雖然平台本標識符可以匹配等於或大於當前的Android版本,但Android 1.5(v3)和Android 1.6(v4)是兩個例外。由於在這兩個版中存在bug。因此,在這兩個版本中使用平台版本標識符只能精確的匹配當前的Android版本。也就是說,如果只為v3,那麼只有Android 1.5會滿足這個標識符。這個bug在Android 1.6以後的版本已經修複。


布局方向(Layout Direction)

例子:

ldrtl、ldltr


ldrtl表示從右至左布局,ldtlr表示從左到有布局。

最低API Level:17(Android 4.2)


最小螢幕寬度

(smallestWidth)


sw<N>dp,其中N表示一個整數。

例子:

sw320dp;

sw600dp;

sw720dp。


最小螢幕寬度的像素。所謂最小聘僱寬度就是Android裝置螢幕的最小邊的寬度(像素個數),例如,解析度是480×800的螢幕最小寬度是480,最小寬度是不會隨著螢幕方向改變而改變的。

下面是一些常用的螢幕尺寸設定。

sw320dp:

     240×320ldpi(QVGA螢幕的手機);

     320×480ldpi(中密度螢幕的手機);

     480×800ldpi(高密度螢幕的手機)。

sw480dp:480×800mdpi(中密度的手機或平板電腦);

sw600dp:600×1024mdpi(中密度的7英寸平板電腦,如Nexus 7就是屬於這種裝置);

sw720dp:720×1280mdpi(中密度10英寸平板電腦,如Nexus 10就屬於這種裝置)。


最小螢幕寬度不僅包括使用者可使用的地區,也包括不可利用的地區(如系統狀態列)。系統會選擇一個與當前螢幕最小寬度接近(不能超過)的資來源目錄。例如,當前螢幕最小寬度是600,而資來源目錄中有一個res/drawable-sw580dp目錄,系統會使用該目錄中的資源,這就因為580接近於600,而且未超過600。


最低API Level:13(Android 3.2)


可能有讀者會感到疑惑,為什麼上面出現了兩個480×800.實際上,這兩個480×800解析度是不一樣的,一個是中密度(sw480dp)、一個是高密度(sw320dp)。為了製作平板電腦,往往將螢幕弄得很大,例如6英寸或7英寸,但為了節省成本,雖然螢幕尺寸增大了,但螢幕的解析度並沒有增加,這就意味著螢幕的密度(沒英寸包含的像素個數)降低了。也就是說,將一個4英寸的高密度螢幕(解析度是480×800)的手機編程7英寸的平板,但解析度仍然是480×800.所以儘管7英寸的平板比4英寸的手機大,但由於螢幕密度降低了,實際上平板的顯示效果並沒有相同解析度的手機效果好。例如,儘管Nexus 7的解析度是1280×800,但由於是中螢幕密度,所以顯示效果並沒有高螢幕密度的Nexus 4好。


可使用的螢幕寬度

(Available width)


w<N>dp,其中N表示一個整數。

例子:

w720dp;

w1024dp。


螢幕可使用的最小寬度。這裡的寬度是值從螢幕左側到右側的寬度。當螢幕方向改變後,可使用的寬度也隨之改變。例如,Nexus 7的螢幕解析度是1280×800,如果將Nexus 7橫向放置(底邊為邊長),可使用的寬度就是1280,如果將Nexus 7縱向放置(底邊為短邊),可使用的寬度為800.

例如,兩個main_activity.xml檔案的路徑如下:

1.res/layout-sw600dp/main_activity.xml

2.res/layout-sw600dp-w720dp/main_activity.xml

假設程式運行在Nexus 7上。當Nexus 7縱向放置時,可使用的螢幕寬度是800,而且最小螢幕寬度也就是800,所以系統會使用第1個資來源目錄中的main_activity檔案。當螢幕方向變為橫向時,可使用的螢幕寬度是1280,而第2個資來源目錄的720(需要轉換成實際的像素寬度,Nexus 7的螢幕密度是216,所以像素寬度是720×216/160=972)最接近於1280(系統會選擇最接近的本地化資來源目錄)。所以這是系統會使用第2個資來源目錄中的main_activity檔案。

最低API Level:13(Android 3.2)


可使用的螢幕高度

(Available height)


h<N>dp,其中N表示一個整數。

例子:

h720dp;

h1024dp。


螢幕可使用的最小高度。這裡的高度是值從螢幕頂端到螢幕底端的高度。當螢幕方向改變後,可使用的高度也隨之改變。例如,Nexus 7的螢幕解析度是1280×800,如果將Nexus 7橫向放置(底邊為邊長),可使用的高度就是900,如果將Nexus 7縱向放置(底邊為短邊),可使用的寬度為1280.

例如,兩個main_activity.xml檔案的路徑如下:

1.res/layout-sw600dp/main_activity.xml

2.res/layout-sw600dp-w720dp/main_activity.xml

假設程式運行在Nexus 7上。當Nexus 7橫向放置時,可使用的螢幕高度是800,而且最小螢幕高度也就是800,所以系統會使用第1個資來源目錄中的main_activity檔案。當螢幕方向變為縱向時,可使用的螢幕寬度是1280,而第2個資來源目錄的720(需要轉換成實際的像素寬度,Nexus 7的螢幕密度是216,所以像素寬度是720×216/160=972)最接近於1280(系統會選擇最接近的本地化資來源目錄)。所以這是系統會使用第2個資來源目錄中的main_activity檔案。

最低API Level:13(Android 3.2)




 


==================================================================================================

  作者:歐陽鵬  歡迎轉載,與人分享是進步的源泉!

  轉載請保留原文地址:http://blog.csdn.net/ouyang_peng

==================================================================================================

  

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.