У меня есть приложение с библиотеками поддержки в версии 28. Выдержка из gradle ниже:
android {
compileSdkVersion 28
defaultConfig {
applicationId "XXXX"
minSdkVersion 21
targetSdkVersion 28
versionCode 112
versionName "XXXX"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
externalNativeBuild {
cmake {
cppFlags "-frtti -fexceptions"
}
}
}
Все работает нормально.Затем я продолжил миграцию на AndroidX, чтобы иметь возможность добавлять Firebase Crashlytics в приложение.
Новое (и полная версия приложения ниже).Единственными дополнениями к Gradle являются плагины и реализации firebase / fabric / crashlytics, а также androidx вместо поддерживаемых реализаций.
apply plugin: 'com.android.application'
apply plugin: 'org.greenrobot.greendao'
apply plugin: 'io.fabric'
// Enable Crashlytics NDK reporting
crashlytics {
enableNdk true
}
android {
compileSdkVersion 28
defaultConfig {
applicationId "XXX"
minSdkVersion 21
targetSdkVersion 28
versionCode 112
versionName "XXX"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
externalNativeBuild {
cmake {
cppFlags "-frtti -fexceptions"
}
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
packagingOptions {
exclude 'thirdpartynotice.txt'
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'androidx.appcompat:appcompat:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.0'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'me.tankery.lib:circularSeekBar:1.1.7'
// Graph View
implementation 'com.jjoe64:graphview:4.2.2'
/*Dependency for glide library*/
implementation 'com.github.bumptech.glide:glide:4.6.1'
annotationProcessor 'com.github.bumptech.glide:compiler:4.6.1'
implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'
implementation 'org.greenrobot:greendao:3.2.2'
// add library
// RecyclerView
implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation files('libs/sensorialibrary.jar')
implementation 'no.nordicsemi.android.support.v18:scanner:1.1.0'
// google vision library
implementation 'com.google.android.gms:play-services-vision:17.0.2'
// Azure IoT Central API.
implementation 'androidx.multidex:multidex:2.0.0'
api 'com.microsoft.azure.sdk.iot:iot-device-client:1.17.1'
// API Access
implementation 'com.android.volley:volley:1.1.1'
**// Firebase SDK
implementation 'com.google.firebase:firebase-analytics:17.2.0'
implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
implementation 'com.crashlytics.sdk.android:crashlytics-ndk:2.1.0'**
}
apply plugin: 'com.google.gms.google-services'
Приложение прекрасно работает, устанавливается и отлично работает на Samsung S9 + / Api 28Если я пытаюсь установить APK на Moto G / Android 7.1.1 / Api 25, я получаю сообщение об ошибке:
Приложение не установлено.Приложение не совместимо с вашим телефоном
Я не знаю / не нашел информации о том, является ли это проблемой androidX (не работает на SDK <28? Я был бы удивлен) или фабрикой(также странно?) </p>
Цените любую помощь в попытке выяснить, что это такое.
Спасибо, mac
*** ОБНОВЛЕНИЕ Самая странная вещь ...
Я тестировал на локальном эмуляторе с 7.1.1. Если я развертываю приложение с Android Studio на эмуляторе, приложение запускается и отслеживает сбои без проблем.Если я создаю APK и пытаюсь загрузить / установить приложение через загрузку (из эмулятора Chrome), то после загрузки появляется ошибка приложения, несовместимого с телефоном).