当我更改 sdk 版本时,遇到 Theme.Dialog 错误
When I change sdk version ,I am encountering Theme.Dialog error
我正在尝试为我的 android 应用安装 Firebase Crashlytics。所有版本的 Firebase Crashlytics 都接受 16 作为最低 SDK。 minSdkVersion
14 个在我的应用程序中可用。当我将 minSdkVersion
提高到 16 时,出现以下错误
C:\Users\Emircan\Desktop\mlxpos\app\src\main\res\values\styles.xml:2:5-5:13: AAPT: error: resource android:style/android:Theme.Dialog not found.
错误行:
<style name="AppBaseTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="editTextColor">@color/black</item>
<item name="android:dialogTheme">@android:style/android:Theme.Dialog</item>
</style>
如果我设置 minSdkVersion
14,我会收到以下错误。
Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version 16 declared in library [com.google.firebase:firebase-analytics:17.6.0] C:\Users\Emircan.gradle\caches\transforms-2\files-2.1\cfbe933ef2af918ca181d266a71288ac\firebase-analytics-17.6.0\AndroidManifest.xml as the library might be using APIs not available in 14
Suggestion: use a compatible library with a minSdk of at most 14,
or increase this project's minSdk version to at least 16,
or use tools:overrideLibrary="com.google.firebase.firebase_analytics" to force usage (may lead to runtime failures)
我该如何解决这个问题? (crashlytics最低版本是17.0.0,也不接受)
这是 build.gradle(:app)
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'
android {
aaptOptions {
cruncherEnabled = false
}
dexOptions {
jumboMode true
}
compileSdkVersion 28
compileOptions.encoding = 'windows-1254'
lintOptions {
checkReleaseBuilds false
}
defaultConfig {
applicationId "com.crash.app"
minSdkVersion 14
targetSdkVersion 28
multiDexEnabled true
vectorDrawables.useSupportLibrary = true
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
/* Do not compile these resources in debug mode. Faster build time.
ext.enableCrashlytics = false
crunchPngs false */
minifyEnabled false
}
}
packagingOptions {
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
}
productFlavors {
}
buildToolsVersion '28.0.3'
}
dependencies {
implementation "com.github.YarikSOffice:lingver:1.3.0"
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.annotation:annotation:1.1.0'
implementation 'com.google.code.gson:gson:2.7'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation files('libs/AndroidEasingFunctions-1.0.0.jar')
implementation files('libs/AndroidViewAnimations-1.1.2.jar')
implementation files('libs/NineOldAndroid-2.4.0.jar')
implementation files('libs/achartengine-1.1.0.jar')
implementation files('libs/acra-4.7.0.jar')
implementation files('libs/apache-mime4j-core-0.7.2.jar')
implementation files('libs/httpclient-4.3.6.jar')
implementation files('libs/httpcore-4.4.3.jar')
implementation files('libs/httpmime-4.3.6.jar')
implementation files('libs/jsoup-1.10.1.jar')
implementation files('libs/logback-android-1.1.1-4.jar')
implementation files('libs/mpandroidchartlibrary-2-1-3.jar')
implementation files('libs/slf4j-api-1.7.6.jar')
implementation files('libs/d2xx.jar')
// Gprinter library
implementation files('libs/commons-lang-2.6.jar')
implementation files('libs/gprintersdkv2.1.3.jar')
implementation files('libs/jcc-bate-0.7.3.jar')
// Gprinter library finish
implementation 'com.facebook.fresco:fresco:1.3.0'
implementation 'com.github.clans:fab:1.6.4'
implementation 'androidx.multidex:multidex:2.0.0'
implementation(name: 'callerlibrary', ext: 'aar')
implementation(name: 'numbertowordsconverter', ext: 'aar')
// compile 'me.dm7.barcodescanner:zxing:1.9.8'
// implementation 'junit:junit:4.13-beta-2'
// implementation 'com.squareup.leakcanary:leakcanary-android:2.1'
implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.firebase:firebase-crashlytics:17.2.2'
implementation 'com.google.firebase:firebase-analytics:17.6.0'
}
好吧,如果你想使用 Firebase Crashlytics
你必须将最小 sdk 版本升级到至少 16。
min sdk 设置为 16 时遇到的问题是由于新版本 (Theme.Dialog) 中不存在的错误主题引起的。改成Theme.AppCompat.Dialog
应该就可以了
我正在尝试为我的 android 应用安装 Firebase Crashlytics。所有版本的 Firebase Crashlytics 都接受 16 作为最低 SDK。 minSdkVersion
14 个在我的应用程序中可用。当我将 minSdkVersion
提高到 16 时,出现以下错误
C:\Users\Emircan\Desktop\mlxpos\app\src\main\res\values\styles.xml:2:5-5:13: AAPT: error: resource android:style/android:Theme.Dialog not found.
错误行:
<style name="AppBaseTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="editTextColor">@color/black</item>
<item name="android:dialogTheme">@android:style/android:Theme.Dialog</item>
</style>
如果我设置 minSdkVersion
14,我会收到以下错误。
Manifest merger failed : uses-sdk:minSdkVersion 14 cannot be smaller than version 16 declared in library [com.google.firebase:firebase-analytics:17.6.0] C:\Users\Emircan.gradle\caches\transforms-2\files-2.1\cfbe933ef2af918ca181d266a71288ac\firebase-analytics-17.6.0\AndroidManifest.xml as the library might be using APIs not available in 14 Suggestion: use a compatible library with a minSdk of at most 14, or increase this project's minSdk version to at least 16, or use tools:overrideLibrary="com.google.firebase.firebase_analytics" to force usage (may lead to runtime failures)
我该如何解决这个问题? (crashlytics最低版本是17.0.0,也不接受)
这是 build.gradle(:app)
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'
android {
aaptOptions {
cruncherEnabled = false
}
dexOptions {
jumboMode true
}
compileSdkVersion 28
compileOptions.encoding = 'windows-1254'
lintOptions {
checkReleaseBuilds false
}
defaultConfig {
applicationId "com.crash.app"
minSdkVersion 14
targetSdkVersion 28
multiDexEnabled true
vectorDrawables.useSupportLibrary = true
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
/* Do not compile these resources in debug mode. Faster build time.
ext.enableCrashlytics = false
crunchPngs false */
minifyEnabled false
}
}
packagingOptions {
exclude 'META-INF/LICENSE'
exclude 'META-INF/DEPENDENCIES'
}
productFlavors {
}
buildToolsVersion '28.0.3'
}
dependencies {
implementation "com.github.YarikSOffice:lingver:1.3.0"
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.annotation:annotation:1.1.0'
implementation 'com.google.code.gson:gson:2.7'
implementation 'androidx.recyclerview:recyclerview:1.1.0'
implementation files('libs/AndroidEasingFunctions-1.0.0.jar')
implementation files('libs/AndroidViewAnimations-1.1.2.jar')
implementation files('libs/NineOldAndroid-2.4.0.jar')
implementation files('libs/achartengine-1.1.0.jar')
implementation files('libs/acra-4.7.0.jar')
implementation files('libs/apache-mime4j-core-0.7.2.jar')
implementation files('libs/httpclient-4.3.6.jar')
implementation files('libs/httpcore-4.4.3.jar')
implementation files('libs/httpmime-4.3.6.jar')
implementation files('libs/jsoup-1.10.1.jar')
implementation files('libs/logback-android-1.1.1-4.jar')
implementation files('libs/mpandroidchartlibrary-2-1-3.jar')
implementation files('libs/slf4j-api-1.7.6.jar')
implementation files('libs/d2xx.jar')
// Gprinter library
implementation files('libs/commons-lang-2.6.jar')
implementation files('libs/gprintersdkv2.1.3.jar')
implementation files('libs/jcc-bate-0.7.3.jar')
// Gprinter library finish
implementation 'com.facebook.fresco:fresco:1.3.0'
implementation 'com.github.clans:fab:1.6.4'
implementation 'androidx.multidex:multidex:2.0.0'
implementation(name: 'callerlibrary', ext: 'aar')
implementation(name: 'numbertowordsconverter', ext: 'aar')
// compile 'me.dm7.barcodescanner:zxing:1.9.8'
// implementation 'junit:junit:4.13-beta-2'
// implementation 'com.squareup.leakcanary:leakcanary-android:2.1'
implementation 'com.google.firebase:firebase-core:16.0.4'
implementation 'com.google.firebase:firebase-crashlytics:17.2.2'
implementation 'com.google.firebase:firebase-analytics:17.6.0'
}
好吧,如果你想使用 Firebase Crashlytics
你必须将最小 sdk 版本升级到至少 16。
min sdk 设置为 16 时遇到的问题是由于新版本 (Theme.Dialog) 中不存在的错误主题引起的。改成Theme.AppCompat.Dialog
应该就可以了