2009-12-10 43 views
68

如何以編程方式獲得當前的Android SDK版本(1.5,1.6,2.0等)?如何檢索android sdk版本?

+2

您的意思是操作系統版本? – jball 2009-12-10 18:11:11

+2

請編輯你的問題的標題。像「檢索Android SDK版本」 – OneWorld 2010-12-09 13:19:50

+0

我想這個答案也是如此。我不在我可以運行測試的地步,所以我不能打印任何常量。我在一個月前下載了它並找不到版本號。 – Adamantus 2012-03-22 14:10:20

回答

101

絃樂Build.VERSION.RELEASE會給你的用戶可見的版本字符串(即1.5,1.6,2.0),而Build.VERSION.SDK_INT會給你從Build.VERSION_CODES的值會更好,如果你想以編程方式比較反對使用。

+25

請注意,Build.VERSION.SDK_INT僅適用於Android 1.6及更高版本。 Build.VERSION.SDK適用於所有Android版本,包括1.5。但是,一旦你選擇了1.5支持,切換到SDK_INT是個好主意。 – CommonsWare 2009-12-10 19:10:42

+2

String readAbleAndroidVersion = android.os.Build.VERSION.RELEASE; – cV2 2011-07-30 19:20:06

+0

ActionBar compat lib使用Build.VERSION_CODES.ICE_CREAM_SANDWICH常量,它不會在1.6仿真器上崩潰。這怎麼會發生? – jakk 2012-09-08 20:36:51

24
StringBuffer buf = new StringBuffer(); 

    buf.append("VERSION.RELEASE {"+Build.VERSION.RELEASE+"}"); 
    buf.append("\\nVERSION.INCREMENTAL {"+Build.VERSION.INCREMENTAL+"}"); 
    buf.append("\\nVERSION.SDK {"+Build.VERSION.SDK+"}"); 
    buf.append("\\nBOARD {"+Build.BOARD+"}"); 
    buf.append("\\nBRAND {"+Build.BRAND+"}"); 
    buf.append("\\nDEVICE {"+Build.DEVICE+"}"); 
    buf.append("\\nFINGERPRINT {"+Build.FINGERPRINT+"}"); 
    buf.append("\\nHOST {"+Build.HOST+"}"); 
    buf.append("\\nID {"+Build.ID+"}"); 

    Log.d("build",buf.toString()); 
+1

真棒答案兄弟.... – 2012-04-11 05:23:43