I have developed an application 6 months back for target version 22.
build.Gradle
android {
compileSdkVersion 22
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.sample.mobile.test"
minSdkVersion 17
targetSdkVersion 22
versionCode 1
versionName "2.3"
multiDexEnabled true
}
}
so now when i am trying to run the application on marshmallow by just changing the
compileSdkVersion 23
targetSdkVersion 23
it is not calling the launcher activity of an application and also the strange thing is, it is not throwing any error.
I am not getting where the problem is, so please help me to resolve this issue,
Thanks in advance.
Related
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.
i released a old version
using this configs:
compileSdkVersion 23
buildToolsVersion '23.0.3'
defaultConfig {
applicationId "my.application.id"
minSdkVersion 15
targetSdkVersion 23
versionCode 3412
versionName "3.3.0"
multiDexEnabled true
}
and all dependencies using 23.4.0
after a i updated to
android {
compileSdkVersion 25
buildToolsVersion '25.0.2'
useLibrary 'org.apache.http.legacy'
defaultConfig {
applicationId "my.application.id"
minSdkVersion 15
targetSdkVersion 25
versionCode 3415
versionName "3.4.2"
multiDexEnabled true
vectorDrawables.useSupportLibrary = true
}
a special device is not compatible with the app anymore thru the Play Store
but the strange thing is, i can run the .apk from internal memory, and its installed perfectly!
i must allow this device to download from PlayStore, since most of my users use this special tablet, i dont know what is wrong cuz there is no error, no output, the APP works in this device, but for play store, its incompatible
im using the new Rollout system and testing thru beta/alpha not working for this app too
the problem was a library using the required flag for camera at the manifest.
for someone having something similiar, look at the dependencies
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?
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.