2012-05-23 47 views
0

我發現了很多關於從我的min-SDK版本通過我的target-SDK瞄準各種Android版本的在線資源。這包括執行反射或包裝類等測試,以獲取僅在我定位的更高Android版本中可用的高級功能。針對多平臺的AVD

我弄不明白的是如何讓它在Eclipse中工作。具體來說,我遇到的問題是,如果我選擇與我的目標SDK相匹配的項目構建目標,那麼Eclipse將不允許我選擇具有較小Android版本的AVD進行調試/測試。因此我無法測試反射技巧以確保它們能夠向後兼容。選擇最低的Project Build Target的替代方案意味着我不能引用僅在最新的Android版本中可用的任何高級類/方法,而不會收到編譯器錯誤。

組織Eclipse Android項目以定位多個版本的正確方法是什麼?

(附註:我試圖使用舊的,無證日曆訪問技巧沿着新的ICS日曆API)

謝謝!

回答

0

project.properties包含您的構建目標。將其設置爲android-15(最新的API)。 在清單中,將min-sdk設置爲最小sdk,例如8(froyo)。這是最低的API,它只會在API大於或等於此值的設備上啓動。

請確保您測試的所有API都低於目標,因爲某些方法可能無法正常工作。一個例子就是在Honeycomb中引入的ActionBar--它不適用於比Honeycomb低的API。

+0

謝謝,這個作品。我必須有一個無關的問題,因爲我有這個配置,但隨着Android_Tools-> Fix_Project_Properties和現在所有的AVD出現重新檢查的東西。我不確定發生了什麼,但至少你已經確認了設置該項目的正確方法。 :-) – DiZiGeL

+0

唉,我關閉了Eclipse,當我重新打開後,不屬於android-15的AVD都再次隱藏起來。非常煩人。 – DiZiGeL

+0

想通了。如果您將Project.Properties.run/debug_settings.Target.Deployment_Target_Selection_Mode設置爲「手動」並且插入了設備,則只會看到與目標SDK匹配的設備或AVD選項。如果您拔下設備,當您嘗試運行代碼時,您將看到所有AVD。 – DiZiGeL

相關問題