我的AndroidManifest.xml文件中包含以下代码。
android {
useLibrary 'org.apache.http.legacy'
compileSdkVersion 33
defaultConfig {
applicationId "com.ccc.ddd"
minSdkVersion 26
targetSdkVersion 33
versionCode 7
versionName "1.6"
multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
compileOptions.with {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
packagingOptions {
merge 'META-INF/DEPENDENCIES'
}
}
但是,我无法理解这里引用的Java版本。这意味着什么?
compileOptions.with {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}
Android的最新Java版本是什么,这真的很重要吗?
谢谢你。
2条答案
按热度按时间sdnqo3pr1#
对于Android API级别,请使用compileSdkVersion和targetSdkVersion选项;对于Java语言级别,请使用sourceCompatibility和targetCompatibility选项。
4nkexdtk2#
这表示您想要的java版本,上面是java版本8,对于java版本10,它将是:Java版本.版本_1_10
1.源兼容性与目标兼容性
targetCompatibility和sourceCompatibilityMap到javac中的-target release和-source release。Source基本上是源语言级别,target是生成的字节码级别。