我有一个针对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也包含在内。 你必须知道你的应用崩溃的地方,以免浪费宝贵的时间。 –