我有一個針對Android SDK v21的Android項目。現在我需要使用Android 4.4(即SDK v20)在設備上進行調試。我該如何告訴Android Studio將舊版本的源碼附加到內部類中,以便我可以一步步完成它們?Android Studio:如何調試舊版Android SDK步驟
回答
您可以使用首選的API級別創建一個新的Android虛擬設備,並在其上調試應用程序。
我無法確認我的答案是否有效,但它對我有用。
我代替我compileSdkVersion,buildToolsVersion,的minSdkVersion和targetSdkVersion用一個新的像我的build.gradle文件以下。
android {
compileSdkVersion 22
buildToolsVersion "22.0.1"
defaultConfig {
applicationId "com.example.mytest"
minSdkVersion 15
targetSdkVersion 22
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
更改後,可能不需要將舊的轉換爲新的或新的舊的sdk組件。
那麼,這將不適用於任何使用最近API的項目,因爲它不會再編譯... – mbonnin
您需要打開模塊設置(右鍵點擊您的應用程序模塊,然後選擇打開模塊設置或只選擇模塊,然後按⌘+↓在Mac)
而選擇compileSdk
和buildTools
到V20
另一個方法是打開「app」模塊的build.gradle
文件以更改compileSdk
和buildTools
。
我想在解決方案前解釋一下。
Google以JAR(android.jar)文件的形式提供SDK API。 JAR文件存儲在SDK LOCATION\platforms\android-API#
。 例如,Android 4.4(Kitkat)API-19的android.jar文件位於YOUR SDK LOCATION\platforms\android-19\android.jar
。
的搖籃彙編了Android Studio使用compileSdkVersion
字段中build.gradle
選擇爲編輯特定的android.jar。
什麼是compileSdkVersion
?
- 該應用程序針對的編譯版本。
- 這意味着您可以編譯和使用該版本API中包含的Android API功能編譯期間還包括所有以前的版本功能。
- 如果您嘗試使用API 21功能,例如
public void openCamera (String cameraId, CameraDevice.StateCallback callback, Handler handler)
在API級別21中添加但將compileSdkVersion設置爲20,則會收到編譯錯誤。 - 如果設置compileSdkVersion 21仍然可以只要你的應用程序的執行路徑不嘗試調用特定的任何API,以API 21
如何設置
compileSdkVersion
運行API 20設備上的應用程序? 有兩種方式
從GUI
1)選擇
1.選擇API 「文件 - >項目結構...」
2)選擇 「APP->屬性」
3)從下拉框中將「編譯Sdk Verion」設置爲所需的SDK版本。
4)「compileSdkVersion」將自動設置在「app」模塊的 「build.gradle」文件中。
2.
gradle.build
文件 1)打開build.gradle
文件設置compileSdkVersion
到所需的值,如19的API#19中的 「應用程序」 模塊
2)的設置API。
我希望幫助... 編碼快樂......
這是一個解決方案是的。如果您在使用appcompat支持庫時嘗試執行此操作,則會發生大量編譯錯誤。 – vangorra
只需打開模塊設置和更改compileSdk和編譯工具到V20
- 1. 如何調試android SDK類?
- 2. 如何使用android studio 2.3.2下載舊版本的android sdk平臺?
- 3. Android Studio構建版本的舊版本
- 4. Android Studio 1.2測試版掛在調試
- 5. 同步Android SDK失敗[Android Studio 2.1.1]
- 6. Android Studio調試
- 7. 調試Android SDK庫
- 8. 舊Android SDK版本上的java.lang.NoClassDefFoundError
- 9. 卸載舊的Android SDK版本
- 10. Android Studio Moto 360調試
- 11. Android Studio 2.0調試版本問題
- 12. 這裏Android SDK試用版
- 13. Android SDK:如何設置舊版本?例如。薑餅
- 14. 如何同步cordova和android studio進行調試?
- 15. RubyMine - 如何調試Cucumber步驟文件?
- 16. 如何在android studio中增加撤消和重做步驟
- 17. 如何更改設置調試版本Android Studio中
- 18. 如何調試舊版本的軟件?
- 19. 如何在Android Studio中禁用的Android機調試
- 20. Android Studio更新編譯sdk版本
- 21. 需要Visual Studio android sdk更新版本
- 22. Android Studio - SDK Manager
- 23. 如何在android studio的sdk管理器上下載舊包(android 5.0)2.3.3
- 24. Android SDK版本
- 25. 步驟/調試Android內置應用程序
- 26. 是否需要使用Android SDK Manager安裝舊版本的Android SDK?
- 27. Android Studio未安裝Android SDK
- 28. 整合Facebook的步驟android
- 29. 舊的android sdk的下載
- 30. Android Studio線程調試
這可能是暫時的解決方法:HTTP ://stackoverflow.com/a/30054969/939193。 –
我看到,如果將compileSdkVersion設置爲20,則它僅使用來自20的源。 –
@cypressious,你的項目是否在空中,意思是在谷歌市場上?你能提供你得到的例外嗎?是爲特定品牌(LG,三星等),例如三星在他們的設備上更改操作系統的Android系統? 爲了在較低的版本上進行調試,您可以安裝Genymotion並在android studio中處於調試模式時在其上運行應用程序。 Genymotion的免費版本爲您提供所有Android 4.0及以上版本的支持,我認爲2.2也包含在內。 你必須知道你的應用崩潰的地方,以免浪費寶貴的時間。 –