Let's say i have an xaiomi device that doesn't have a license for using google apps(Google App Services) but only have the android system on it(hence the device is suppose to be more cheap). So is an app that uses a google map services can be used in the device?
No. When you try using the Play Services SDK, it will look for the Play Services Framework and not find it and give you some sort of unrecoverable error.
Your choices are:
Build the app using something other than Play Services (e.g., OpenStreetMap or MapBox for maps instead of Maps V2).
Use different product flavors of your app for different distribution channels (e.g., a google flavor for distribution through the Play Store and an other flavor for distribution outside of the Play Store). You can use Play Services in the Play Store flavor and use some alternative for the non-Play Store flavor. This is more work, but if you feel that the Play Services results will be much better for the user, it may be worth the effort.
Related
I know there are tutorials and unofficial ways to install Google Play Services for AR. While this may work or not for a particular device is a technical problem to be addressed, but is it legal?
Is it legal to install Google Play Services for AR and use it as part of an AR app for commercial purposes?
Doing some googling I found that google play services for AR comply to https://developers.google.com/ar/arcore_open_source_licenses
It is stated that it is Apache License Version 2.0. This practically should allow commercial usage of it, but what if I am installing it not officially (not from Google Play)?
and it also stated on play store for Google Play Services for AR that:
By using this service you agree to be bound by our Google Terms of Service (Google ToS, https://www.google.com/accounts/TOS) and Google’s general Privacy Policy (https://www.google.com/intl/en/policies/privacy/). This service is a Service as defined in the Google ToS and the terms regarding software in our Services apply to your use of this service.
Also, there are privacy requirements stated here: https://developers.google.com/ar/distribute/privacy-requirements
But I suppose that as long as I add
"This application runs on Google Play Services for AR (ARCore), which is provided by Google LLC and governed by the Google Privacy Policy."
in the right place, it should be ok.
Did I get it correct? Is it legal (in terms of obeying all licenses) to use ARCore on any device whether it has Google Play Services or not? even if the specific device is officially unsupported?
I have an old app which uses Google play services 5.08. Since the app uses kiosk mode, we never updated google play services on the device. Now I have to update the google play services to 8.4. I also want the already existing users to use the app without getting crashes. So how do I support both of 5.08 and 8.4 APIs to support in the app? I see Google doesn't expose the APIs of 5.08 when I use 8.4 in Gradle file.
Create a newer version of the app that will use the latest google play service(8.4). Retain the older version of the app for the current google play service(5.08).
The version of the Google Play Service will depend on the APIs your application implements. Supporting both google play service in an app will affect your application performance in a negative way or it is not applicable. Every update of Google Play service adds new APIs connected and older APIs improved. Consider the APIs your application will implement, then decide which version of google play services should your user update to have a smooth running application.
The Google Play services client
library
The client library contains the interfaces to the individual Google
services and allows you to obtain authorization from users to gain
access to these services with their credentials. It also contains APIs
that allow you to resolve any issues at runtime, such as a missing,
disabled, or out-of-date Google Play services APK. The client library
has a light footprint if you use
ProGuard as
part of your build process, so it won't have an adverse impact on your
app's file size.
If you want to access added features or products, you can upgrade to a
new version of the client library as they are released. However,
upgrading is not necessary if you don't care about new features or bug
fixes. We anticipate more Google services to be continuously added, so
be on the lookout for these updates.
I am considering using Xamarin.Android and MvvmCross on an enterprise device that does not have Google Play Services or any other Google apps/services (i.e. Google Maps).
Does MvvmCross have any dependencies on Google Play Services or other Google apps/services that may not exist on an enterprise device?
No. The only time you would need to install the Google Play Services component is if you use a feature like Maps, Cloud Messaging, or In-app purchases.
MvvmCross is very modular and you include only the features you need primarily via plugins.
As mentioned by #Kiliman, MvvmCross has no dependencies on Google Play.
To get you started here are two good links:
1) Writing a first App
2) Video on using MvvmCross and Android (iOS and Windows as well)
I recently replaced AdMob library with Google Mobile Ads and I have a question about that: Will ads appear on Amazon Kindle Fire devices?
I ask this because I know that Google Mobile Ads depends on Google Play Services, so I'm a little confused.
Google Play Services still supports devices that don't have the Google Play store
installed on it. The only difference is that devices without the Play
Store (and the accompanied Google Play Services app) on it will not receive automatic
updates, so you'll still want to grab new versions of the library
provided in Android SDK manager and include them when releasing your
app.
As you can see above, if Google Play Services is not installed on the device, it will fall back to the version you included with your app as a library.
https://groups.google.com/forum/#!topic/google-admob-ads-sdk/obflEHgq_og
I'm about to put my Android app, which uses google api v1 onto the market. I now see that v1 has been depreciated and that I am urged to use v2 instead. I see that v2 appears an order of magnitude more complex and that google play services are needed.
Since google play services are needed does that mean that my app will only be able to be distributed on google play and not, say, be distributed from my own web site?
thanks, Gary
Since google play services are needed does that mean that my app will
only be able to be distributed on google play
No, you can still distribute through any channel you want. It is a requirement for the device, not the distribution. The device your app installs on needs to have Google Play Services installed, which a number do. It is very similar to the v1 maps which required the phones have Google Maps installed, reflected in the manifest via
<uses-library android:name="com.google.android.maps">
Google likes to keep everybody using their own system as per usual. But it should still be possible to distribute via your website. You would need to save it as a .apk file.
Heres how to save as .apk file
and Heres a tutorial on how users can download and install.