I updated SDk for android after 4.4 release. I saw that they have bifurcated Google Play Services and Google Play Services for Froyo. What is the reason behind this? Now suppose I want to use integrate Google Map in app how to use these two services for the Google Map Integration ?
Per the Google Play Services 4.0 announcement:
With over 97% of devices now running Android 2.3 (Gingerbread) or newer platform versions, we’re dropping support for Froyo from this release of the Google Play services SDK in order to make it possible to offer more powerful APIs in the future. That means you will not be able to utilize these new APIs on devices running Android 2.2 (Froyo).
If you use the 'Google Play Services for Froyo', you will not be able to use the new features included in Google Play Service 4.0. For Maps, the 4.0 features include
The Maps API enhances map customization features, letting you specify marker opacity, fade-in effects, and visibility of 3D buildings. It’s also now possible to change ground overlay images.
Related
I have the legacy application which actively use "com.google.android.gms.location.LocationClient" but in the new GooglePlayServices version there is no such class!! https://developer.android.com/google/play-services/index.html "...If you were previously using LocationClient, call the APIs in the com.google.android.gms.location package instead..." said there.
As I understand there is no option to force an old version of Google Play Services with custom application on the device, am I wrong?
Does it mean that I should rewrite some portion of application?
Is there any method to run app with old version of Google Play Services library on the device?
All Google Play Services are backward compatible - as long as you compile with Google Play Services 6.1 or below, you can continue to use LocationClient.
However, that does mean you will not get any of the new APIs, performance improvements, or other features available only in the newer versions of Google Play services so you should definitely consider moving over to the new API as soon as possible.
I have been searching but couldn't find the difference between both of these things. I have read other questions in which people have said that we should use Google Apis as build target when we want to integrate Google Maps Api or use other Google apis.
The problem is that i am using maps on projects that were build on simple Android 4.4 not Google API (platform 4.4) and the maps are working just fine on my Galaxy s3.
How are they possibly working?
And if they are working then what is the difference between Google APIs and SDK platform?
Or is the difference only related to emulators?
It is really pointless to use the Google API's now because most if not all things included in that have been deprecated and moved to google play services. Selecting Google API will not do anything except maybe increase the size of your program. The difference being is in addition to the 4.4 SDK you would also get all the Google API stuff with it
You don't need (but it won't hurt you) to use Google APIs if you use Google Maps Android API v2. Google APIs is for when you work with deprecated Google Maps Android API v1 or you program USB.
The google API includes Google Maps and other Google-specific libraries. The Android one only includes core android libraries.
As for which one to choose, I would go with the Android API until you find that you need the Google API; such as when you need Google Maps functionality.
http://code.google.com/android/add-ons/google-apis/index.html is a link to the Google API page.
I need to use the Google Map API for my android application, but as we are now aware that API versoin 1 is deprecated, I can not use MAP API v2.0 for the lower versions of Android.
So can you please give me any suggestions what alternative can be used to show google map to the lower versions of Android?
Thanks,
Shubhangi.
The Maps API are bundled with Google Play services and are compatible with Android 2.2 and higher. All devices with Android 8 API level support OpenGL 2.0, so devices with Android 2.1 version can't support Google Maps v2. You can check in the Documentation
Note: Note, though, that not all Android 2.2/2.3 devices have the ability to get the Play Services Framework, particularly those devices that never received the Play Store and are stuck with the old Android Market. Android 3.0+ should be fine
As I understand application with new maps SDK v2 can be installed only on devices with Google Play services APK.
And v1 keys will not be available after 3/2013, so does it means I can't build today map application which runs on most of Android devices?
As I understand application with new maps SDK v2 can be installed only on devices with Google Play services APK.
The app can be installed on whatever devices you want. Maps V2 will only work on devices with the Play Services Framework APK. This should already exist on most Android 3.0+ devices and should be downloadable to many Android 2.2/2.3 devices.
so does it means I can't build today map application wich runs on most of android devices?
First, Maps V1 works on most Android devices. The fact that you cannot get new API keys starting on 3 March 2013 does not mean that you cannot use Maps V1. Simply make sure that you have a long-lived debug keystore, that you have Maps V1 API keys for that keystore and your production keystore, and that you have a decent backup regimen.
Second, Maps V2 should work on "most Android devices", though dealing with devices that do not presently have the Play Services Framework (but could download it from the Play Store) is a bit annoying.
Third, there are other mapping solutions available, such as OpenStreetMap with OSMDroid, that can run on just about anything.
Android 2.2 is installed on 97.6% of devices, and is the major requirement for Google Play services.
Source: http://developer.android.com/about/dashboards/index.html
Sounds like a "most of Android devices", I think..
Is it possible to use Google Maps Android library in my app in a way, that the app can be installed even on phones without Google Maps? On phones without Google Maps, the maps feature would be disabled.
Is it possible to use Google Maps Android library in my app in a way, that the app can be installed even on
phones without Google Maps?
There is an undocumented android:required="false" flag you can put on the <uses-library> element. I am hopeful that they will document this in a future release. With that set to false, you would need to use reflection to see if Google Maps is loaded (e.g., try to find the MapView class) -- if not, disable whatever would lead the user to a map.
If anybody else has the same problem (I do):
On this Android Developer page it says -- as far as I can tell -- that you can reference the Maps API and thus have e.g. a map activity in your app by using Google Play services:
"The Google Maps Android APIs are not included in the Android
platform, but are available on any device with the Google Play Store
running Android 2.2 or higher, through Google Play
services.
To integrate Google Maps into your app, you need to install the Google
Play services libraries for your Android SDK. For more details, read
about Google Play
services."
Apparently it is an actual app (it is installed on my phone) that updates certain Google stuff.
So it seems it is possible, but only for devices running Android 2.2 (API level 8) and above.
I find the explanation on that site a bit unclear, however, and I have not been able to test this on my own.
In my case, I guess I have to live with the fact that not all devices will be able to install my app, since I target an API < 8.