2012-09-05 84 views
0

我要去嘗試aviary,發現這些字的文件中:支持android版本和編譯android版本?

鳥舍的Android SDK支持Android 2.2+爲的minSdkVersion,但必須採用Android 4.0(API級別14)編譯目標sdk。這意味着您的應用程序必須在「Project Build Target」Eclipse面板中選擇「Android 4.0」。

我很困惑,爲什麼一定要使用的Android 4.0並同時支持Android 2.2的編制?如果我使用它編寫一個應用程序,它可以在Android 2.2移動版上運行嗎?如果是的話,爲什麼它需要安卓4.0編譯?

+0

簡單的排序線,**如果您編譯通過Android 4.0的應用程序也將在具有Android 2.2或以上無故障的設備運行**因此,對於這個讓你應用程序在Android 4.0中,並在清單文件中寫入'minSdkVersion = 2.2'。 – user370305

+0

爲什麼無法使用android 2.2編譯爲'minSdkVersion'? – Freewind

+1

因爲它可能會利用較新版本的Android的API調用(如果這些API在設備中可用) –

回答

1

AndEngine需要Android 4.0進行編譯,但它確實會檢查Android版本的手機是否正在運行,以確保它只會調用與該版本兼容的API。因此,雖然它與android 4.0一起編譯,但它會在Android 2.3設備中正常運行。我想這同樣適用於百鳥園。

此鏈接有用:http://developer.android.com/training/basics/supporting-devices/platforms.html

+0

Android使用Java,哪種是靜態類型語言(無宏),AndEngine如何檢查版本並只調用指定版本支持的API? – Freewind

+0

我的意思是在Java中,較舊的JVM可能拒絕運行由較新的JVM生成的類字節,Dalvik VM沒有此限制? – Freewind

+0

我剛剛測試了一些Java代碼,發現它是一樣的。我誤解了java :) – Freewind