I have the following in my main app:
...
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
minSdkVersion 8
targetSdkVersion 23
versionCode 19
versionName "1.0.5"
}
...
In a library I use, this is defined:
...
android {
compileSdkVersion 17
buildToolsVersion "19.1.0"
defaultConfig {
minSdkVersion 7
targetSdkVersion 7
}
...
I have uppgraded my API target etc. in my app. The library I have, use the same API target etc. (haven't changed the code). If I upgrade my app and use libraries, can I leave them as is? Or do I need to sync the two in respect with compileSdkVersion, buildToolsVersion, minSdkVersion and targetSdkVersion?
Related
Following is my React-Native app's configuration,
android/app/buid.gradle:
defaultConfig {
minSdkVersion 19
targetSdkVersion 30
compileSdkVersion 30
buildToolsVersion '30.0.3'
multiDexEnabled true
missingDimensionStrategy 'react-native-camera', 'mlkit'
missingDimensionStrategy 'react-native-camera', 'general'
}
gradle-wrapper.properties:
distributionUrl=https\://services.gradle.org/distributions/gradle-6.9-all.zip
Facing following error when I run from Android Studio
minSdkVersion 19 cannot be smaller than version 21 declared in library [com.facebook.react:react-native:0.71.0-rc.0]
I must support minSdkVersion 19 as many of my users are still using lower versions of android.
Hence, How can i continue with minSdkVersion 19 with out any error?
Note: I have gone through the suggested question and have already applied suggested changes. But still facing the error.
After updating latest android gradle 7.1.2 and compileSdkVersion 32 app Frozen like in the picture
android {
compileSdkVersion 32
buildToolsVersion "30.0.3"
defaultConfig {
applicationId "com.bad.good"
minSdkVersion 16
targetSdkVersion 32
versionCode 33
versionName "4.3"
Finally I found it. one of the old library Couse this app Frozen. After removing that library it fixed ..
I'm using latest dependencies in my project. My minSdkVersion is set as 15 and targetSdkVersion is 26. Which build tools and compileSdkVersion should I use so that the app can be run even in Adnroid 5.
Here are the details-
compileSdkVersion 28
buildToolsVersion '28.0.3'
defaultConfig {
applicationId "com.app.shoppingbull"
minSdkVersion 15
targetSdkVersion 26
versionCode 1
versionName "1.0"
}
Will these work fine in all devices or I have to reduce the CompileSdkVersion?
Always follow this,
minSdkVersion <= targetSdkVersion <= compileSdkVersion
Because, when you develop app always target the latest SDK so that you provide the latest features of Google to your user.
According to source.android.com if you want to make your App can be run in Adnroid 5 and newer, you should set the minSdkVersion to 21
tip: don't make your minSdkVersion lower than 21
Your application will work in the range of minSdkVersion and targetSdkVersion api level.
You should target your app to the latest version of Android SDK version (see SDK Platform release notes) to make sure you've covered all the Android version. It also force you to check if your code is working correctly with the latest version.
So, change your app build.gradle to something like this:
compileSdkVersion 28
buildToolsVersion '28.0.3'
defaultConfig {
applicationId "com.app.shoppingbull"
minSdkVersion 15
targetSdkVersion 28 // latest stdk
versionCode 1
versionName "1.0"
Ideally, your targetSdkVersion and compileSdkVersion should be the same, and the latest. That's 28 at the current time of writing.
minSdkVersion dictates the minimum version your app will support, so having a compile/target of 28 will still let you run on 15.
compileSdkVersion 21
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "me.drakeet.seashell"
minSdkVersion 14
targetSdkVersion 21
versionCode 80
versionName "2.2"
}
Above code is in my gradle.build, and my app run perfectly in Android Lollipop (5.0), so I am puzzled that why Play judge and limit it just support Android 4.0~4.4, why not 5.0+?
Thanks!
I have fix it.
just add:
maxSdkVersion 21
in the gradle.build nearby minSdkVersion.
I am trying L and got an API level error. I have set the current min to 'L' but it seems Android Studio think it's 20.
How to fix it?
I updated Android Studio 0.6.1 to 0.8.0 and the error disappeared.
build.gradle looks exactly the same:
compileSdkVersion 'android-L'
buildToolsVersion '19.1.0'
defaultConfig {
applicationId 'com.prt2121.tryl'
minSdkVersion 'L'
targetSdkVersion 'L'
versionCode 1
versionName '1.0'
}
I don't think my question is a duplicate but thanks anyway.
Change
android {
compileSdkVersion 'android-L'
buildToolsVersion '19.1.0'
to
android {
compileSdkVersion 21
buildToolsVersion '21.0.2'
Note android-L is in single quotes but 21 isn't. 21 is an integer and not a string.