We have uploaded an app into market with following api level in AndroidManifest file
uses-sdk android:minSdkVersion="15"
android:targetSdkVersion="16"
It is for support of api level 4.1.1 and 4.1.2. But this app can be installed on 4.2 which has api level 17. Any ideas.
targetSdkVersion does not specify the max SDK API level. Use maxSdkVersion as well.
This link may also be helpful.
android:maxSdkVersion="16" :- This is the maximum SDK version number that an
application works on. [integer]
Related
I set my android app with below SDK settings. If some using android device with high version > 17. Will my App be run without problem on that device? Thanks.
android:minSdkVersion="11"
android:targetSdkVersion="16"
Yes, it will work(on api level greater than 17) without any major issue, there may be user experience related problems on latest versions(say 5.0 or 5.1).
But it is recommended to use latest SDK level as target sdk.
How can I know which Android API level I am using. I need to make sure I am using version 1.1.0.
Edit:
My bad. I need level 14.
Thank you.
Build.VERSION.RELEASE will give you the version number as a String, such as 1.5
How can I know which Android API level I am using
I do not know what you mean by "using".
You can determine the API Level of the device that you are running on via Build.VERSION.SDK_INT.
I need to make sure I am using version 1.1.0
There was never a "1.1.0" release of Android. Android 1.1 did not have a ".0" suffix. Android 1.1 was released in early 2009 and is used on approximately zero devices today.
<uses-sdk android:minSdkVersion="14" /> in your AndroidManifest.xml
In general you're also interested in the compileSdkVersion of the project, which you can see in your build.gradle file.
I want to develop android applications, i've downloaded all the necessary.
One last question:
if i decided to create apps that are compatible with for example starting from API 11 and later, what is the strict necessary i need to download from Androis SDK Manager?
I need to download all?
What are Android SDK build-tools?
What are other downloads in the list?
Can someone post a screenshot of strict necessary scenario to do what i'm need?
thank you
You don't need to download all Android SDK, just get Android 3.0 (API 11) and Android 5.0 (API 21) and declare the min and max targetsdk in the manifest file.
you have to declare your desire version using this line
<uses-sdk android:minSdkVersion="integer"
android:targetSdkVersion="integer"
android:maxSdkVersion="integer" />
in manifest file. for more info check this out http://developer.android.com/guide/topics/manifest/uses-sdk-element.html
EDIT
you don't have to download anything for make strict versioning.
android:minSdkVersion
Like the name suggests, defines the minimum API level your application works on. This is used by Play Store to detect if the application is compatible with the users device. So, if your minSdkVersion is 7, Play Storewill show the application to devices from API level 7 (2.1) and up. This attribute should be set by all apps!
android:maxSdkVersion
This defines the maximum API level your application works on. Again, Play Store uses this to detect if an application is compatible with a device. Please note, that there in most cases is no reason to use this! it is perfectly possible to create a single APK which works on every API level from your minSdkVersion and up!
android:targetSdkVersion
Unlike the other two attributes, this is used by the Android platform itself. This attribute should be set to the maximum API level you tested your application on. If not set, this will default to your minSdkVersion.
you can also visit this to get more details http://simonvt.net/2012/02/07/what-api-level-should-i-target/
I have completed the basics of android application using eclipse. I am now trying to create games using the ANDengine which I'm sure I have done correctly.
To make sure I'm on the right track, I downloaded examples and tried to run them on my tablet. After importing the sample code, I received an error "cannot resolve target android-15" which I solved by installing SDK 4.0.3 which had the Api level 15. I downloaded the bundle with sdk 4.4 and api level 19. I would have thought level 19 would be sufficient but I downloaded it anyway.
I downloaded a second example and it now cannot resolve "android-8" which I'm assuming is going to require another SDK.
How does the api levels work? Am I required to install all of the SDK versions?
The SDKs themselves are not downwards compatible. If it say in your AndroidManifest.xml that the target SDK version is 15, you'll need exactly that version to compile the project.
Anyway, the code itself is upwards compatible. Just open your AndroidManifest.xml and look for something like that:
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="15" />
Change it to
<uses-sdk
android:minSdkVersion="15"
android:targetSdkVersion="19" />
and you can compile with API level 19.
I do not know about AndEngine, but for using different API levels in your code, you need to download the required files for each platform using SDK manager. You can check in $SDK_ROOT/platforms folder which API levels are already downloaded on your machine. You need to download each API-level, before using them in your project. Downloading the highest one is not enough.
And yeah you need to download the version which you're going to target i.e. the version which is going to be used to compile the project (targetSdkVersion), not the one you want to use as minimum api level (minSdkVersion)
I need to suppoert api level 10, and working with latest sdk to provide new device features (only if sdk of device is new).
on manifest I choose min version 10.
The problem is that the application is not installed succesfully on the old sdk devices.
Whne I debug on those devices it works, The installation of signed aok fails.
Any suggestions?
Use this in your manifest file
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
If your application uses any API's that are not available on older Android versions, then you should try to use Support Libraries or just give up on those devices. If the application does run on older emulators in debug mode, then you can just change the minSdkVersion in the manifest to a lower one. Hope this helps.