Хотел опубликовать предновогоднее обновление для своего приложения, но оказалось что targetSdkVersion должен быть 29. O'k. Сначала все сделал по рекомендации android studio, т.е. изменил compileSdkVersion тоже на 29 и поставил buildToolsVersion 29.0.0. А потом рефоктор->migrate to androidx, но при этом поймал кучу ошибок, с которыми вроде справился. Студио не ругается, а когда компилирую подписанный aab, гугл плей пишет что подпись недействительна. Тогда скомпилировал apk, поставив нужные галочки (прогуглил). Вроде все в порядке, но приложение успешно устанавливается и не запускается (видимо какие то ошибки в xml, о которых студио умалчивает). Тогда попробовал оставить все как в предыдущих версиях, поменяв только targetSdkVersion на 29. Выглядит все окей: гугл плей принимает, на подпись не ругается, а приложение запускается. Но модерация странно затянулась.
Вот код из градла:
apply plugin: 'com.android.application'
android {
useLibrary 'org.apache.http.legacy'
compileSdkVersion 28
defaultConfig {
applicationId "com.my.project"
minSdkVersion 19
//noinspection OldTargetApi
targetSdkVersion 29
versionCode 13
versionName "12.3"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildToolsVersion = '28.0.3'
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
//noinspection GradleCompatible
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:support-v4:28.0.0'
//noinspection GradleDependency
implementation 'com.android.support:appcompat-v7:28.0.0-alpha3'
//noinspection GradleDependency
implementation 'com.android.support.constraint:constraint-layout:1.1.2'
//noinspection GradleDependency
implementation 'com.android.support:design:28.0.0-alpha3'
implementation 'org.jetbrains:annotations-java5:15.0'
implementation 'org.jetbrains:annotations-java5:15.0'
implementation 'com.android.support:exifinterface:28.0.0'
}
apply plugin: 'com.google.gms.google-services'
В этом случае студио ругается на compileSdkVersion 28 (выделяет красным и рекомендует поставить 29), но все компилируется, выдавая и aab, и apk с пометкой "errors 0"
Приложение крайне простое - первая страница оффлайн html, а далее 99% работает на WebView
P.S. не судите строго. Опыт, навыки и знания на уровне любителя (не задавался целью стать программистом)