4

When you create an android project in Eclipse, you have to choose which platform to compile with. You can choose API 17 (Android 4.2) or Google APIs (API 17).

From my understanding, Google APIs is API 17 (Android 4.2), but has the maps library support and usb open library. So if Google APIs is the same as Android, but with more features... why wouldn't you choose it everytime?

Is there a downside to Google APIs? Every tutorial online I see, they use API 17 (Non Google APIs). I'm always curious as to why they manually change it to that instead of just using the one that has more in it.

CREW
  • 926
  • 3
  • 17
  • 32

3 Answers3

7

When you run with Google APIs, your app is built to run on a device which has the Google services installed on it already (Maps, USB etc). If you absolutely require these services, you should build against Google APIs, but then your app will not run on device which aren't certified by Google (that is, don't have Google Play installed).

If you do want to run on device without Google Play, and your app does not require any of the Google Services to be 100% present, then you should compile against the normal Android APIs.

See this document for a bit more on what Google expects from certified devices.

Raghav Sood
  • 81,899
  • 22
  • 187
  • 195
2

Some of the cheap android phones which aren't certified android phones (those that don't have Google Play) won't support apps compiled against the google api. So unless you need functionality provided by google api, just build against android api

  • I presume the only big player that doesnt have google play is kindle now? If I donwload the google version will I be able to use it on a kindle? – RNJ Jul 27 '14 at 21:05
1

Google APIs includes some extra things like Maps. It is optional, and some people don't want to download the extra stuff. The examples use the non-API version in case the person downloading the sample didnt download the Google APIs.

Karakuri
  • 38,365
  • 12
  • 84
  • 104
  • yes... I know, lol. Just like I wrote above. But In videos and tutorials I have seen by pros, they manually changed from Google APIs to regular API 17. Ah, I see you edited it. So if an app was compiled using Google APIs (the more robust one), the user who uses the app has to download additional stuff on his android phone to use it? Or is it just the developer that has to have the Google APIs – CREW Apr 07 '13 at 03:04