我聽說有一個關鍵字或方法可供Android開發人員用來確定Android 4.0+是否在平板電腦上運行(無需執行任何屏幕尺寸比較)。我找不到它。Android 4.0+平板電腦關鍵字?
那麼,這是真的嗎?如果是這樣,那是什麼?
編輯:我看到人們給我的答案不是我要找的。我已經知道如何使用kludgy屏幕大小方法和使用OS方法來確定設備是平板電腦還是手機。我正在尋找一種從API級別14開始可用的方法,希望能夠告訴我相同的信息。我找不到它,所以我想知道它是否存在。
我聽說有一個關鍵字或方法可供Android開發人員用來確定Android 4.0+是否在平板電腦上運行(無需執行任何屏幕尺寸比較)。我找不到它。Android 4.0+平板電腦關鍵字?
那麼,這是真的嗎?如果是這樣,那是什麼?
編輯:我看到人們給我的答案不是我要找的。我已經知道如何使用kludgy屏幕大小方法和使用OS方法來確定設備是平板電腦還是手機。我正在尋找一種從API級別14開始可用的方法,希望能夠告訴我相同的信息。我找不到它,所以我想知道它是否存在。
的Android 4+有configuration object。您可以使用「isLayoutSizeAtLeast(int size)」方法進行檢查。這比我見過的其他一些例子要少得多。
平板電腦基本上只是意味着一個大(呃)屏幕,所以它歸結爲這一點。有看到一個簡單的方法,如果它是一個平板電腦大小的屏幕與否:
if (getResources().getConfiguration().isLayoutSizeAtLeast(Configuration.SCREENLAYOUT_SIZE_XLARGE))
{
//Is a tablet.
}
你可以改變Configuration.SCREENLAYOUT_SIZE_XLARGE
到Configuration.SCREENLAYOUT_SIZE_LARGE
,如果你想趕上較小的了。
我實際上明確要求在Android 4 +的能力。我還明確表示,我不希望涉及屏幕大小比較的解決方案。 –
你說你不希望「kludgy」屏幕尺寸比較。雖然「kludgy」是主觀的,但大多數人可能會認同這種方法不是「笨蛋」。 Android 4+能夠做到這一點。如果你還想知道它是否是Android 4+,那麼你可以執行'if(android.os.Build.VERSION.SDK_INT> = 14)'。 – Ralgha
由於Android文檔中所描述的,SDK水平(整數)的手機運行在可用:
android.os.Build.VERSION.SDK_INT;
對應於此int的枚舉位於android.os.Build.VERSION_CODES類中。
代碼示例:
int currentapiVersion = android.os.Build.VERSION.SDK_INT;
if (currentapiVersion >= android.os.Build.VERSION_CODES.FROYO){
// Do something for froyo and above versions
} else{
// do something for phones running an SDK before froyo
}
編輯:這SDK_INT可自甜甜圈(Android的1.6/API4),所以請確保您的應用程序是不是蛋糕(Android的1.5/API3)復古兼容,當你使用它或者你的應用程序會崩潰(感謝程序員布魯斯的精確度)。
看到http://stackoverflow.com/questions/5832368/tablet-or-phone-android – mfrankli