5

I have just downloaded the latest SDK version from Android SDK Manager and set my App's Project Build Target to Google APIs level 17 as below

enter image description here

And added in my App's AndroidManifest.xml as below

<uses-sdk 
   android:minSdkVersion="3" 
   android:targetSdkVersion="17" 
   android:maxSdkVersion="17" />

And loaded the Emulator with Level 8, 2.2 then tried to launch the App on this Emulator. Whenever I run the app it says "No compatible targets were found" (I know I can create AVD for level 17 but want to launch on emulator level 8) when I have android:minSdkVersion="3" in my AndroidManifest.xml.

I researched a lot and did not find a proper answer to this.

Then I changed the Project Build Target to Android 4.2 level 17 as below

enter image description here

The App started launching on all the Emulators below level 17.

But I still don't know what is restricting the App to launch on lower version Emulator when the Project Build Target is to Google APIs level 17

Vinayak Bevinakatti
  • 40,205
  • 25
  • 108
  • 139

3 Answers3

1

Google APIs Add-On is an extension to the Android SDK development environment that lets you develop applications for devices that include Google's set of custom applications, libraries, and services. A central feature of the add-on is the Maps external library, which lets you add powerful mapping capabilities to your Android application.

Enabling Google APIs lets you use features that are not present in default Android devices. Since your minSdkVersion is set to 3, you should be able to launch the application if you create an emulator with API version greater than 3 but with Google APIs enabled.

Sapan Diwakar
  • 10,480
  • 6
  • 33
  • 43
1

Just remove the targetSDKVersion attribute and then try.

An integer designating the API Level that the application is targetting.

With this attribute set, the application says that it is able to run on older versions (down to minSdkVersion), but was explicitly tested to work with the version specified here. Specifying this target version allows the platform to disable compatibility settings that are not required for the target version (which may otherwise be turned on in order to maintain forward-compatibility) or enable newer features that are not available to older applications. This does not mean that you can program different features for different versions of the platform—it simply informs the platform that you have tested against the target version and the platform should not perform any extra work to maintain forward-compatibility with the target version.

https://stackoverflow.com/a/4568358/760489

Community
  • 1
  • 1
Pratik
  • 30,639
  • 18
  • 84
  • 159
0

try removing android:maxSdkVersion