Using Android Account Transfer API on Wear OS - android

Is it possible to use Androids Account Transfer API with a usual Android phone as source and a Wear OS smart watch as receiver? According to the documentation the setup has to look like this:
The source device must be running Android 4.0.1 (API level 14) or
higher.
The target device must be running Android 8.0 (API level 26)
or higher.
Both source and target devices must be running Google Play
services version 11.2.0 or higher. You must build your APK using
Google Play services SDK version 11.2.0 or higher.
I want to sync my phone's accounts to my smart watch.

If your objective is to sync data from your Android phone to an android wear, I think Google Fit API will do the job.
Google Fit is an open ecosystem that allows developers to upload
fitness data to a central repository where users can access their data
from different devices and apps in one location:
Fitness apps can store data from any wearable or sensor.
Fitness apps can access data created by any app.
User's fitness data is persisted when they upgrade their fitness devices.
Also, it was mentioned in the documentation that the least Android 2.3 (API level 9) and higher is supported.

Related

Wear OS app in Play Console - target API error

I have an Wear OS app on the Play Store. Recently I wanted to upload update but I'm getting error Your app currently targets API level 30 and must target at least API level 31 to ensure that it is built on the latest APIs optimised for security and performance. Change your app's target API level to at least 31.
I would understand this for regular phone app but in Play Console Help Center they clearly state that Wear OS app are excluded (since nothing newer than API 30 exists there anyway) - https://support.google.com/googleplay/android-developer/answer/11926878
This is the error:
I'm not sure how they define (distinguish) between regular app and Wear OS app because when I've created store listing it was basically regular app setup + enabling Wear OS form factor but all the documentation describe it this way. And the distribution was working fine so I consider my app listing Wear OS only.
I also have <uses-feature android:name="android.hardware.type.watch" /> in the manifest as required.
Tldr; is it something I'm missing in my setup to be eligible for this target API exception for Wear OS or is this console error happening to others as well?
Change Your targetSdkVersion to 31
then try to Upload on Play Consol

Are there any corelation between Android OS version and supported Google play services version?

Firebase Crashlytics has announced that it's going to remove its old version and we should use its new version SDK till november 15th on our androird app. To do so, we should also increase our minimum supported google play services version to at lease 16 which currently is 11.xx.xx.
So the question is what android devices don't support google play services v 16.xx.xx? I need to know this so I can estimate our users churn.
Are there any relations between minimum google play services version and Android OS version or Android API level or Device model?
Are there any relations between minimum google play services version and Android OS version or Android API level or Device model?
As with any other unknown app, just peek its Manifest. If there's limitation on sdk, it will be there as well.
So the question is what android devices don't support google play services v 16.xx.xx?
That's going to be an extremely long list of devices that are mostly no longer in use any more. It's probably not worthwhile to try to get this list, as it's going to take so much work to process what that means for you. It's probably better to take the advice of Android Studio (during new project configuration) when it says that "your app will run on approximately 99.8% of devices" when targeting api level 16. According to the documentation:
In general, devices running Android 4.1 (API level 16) or later and have the Google Play services app installed receive updates within a few days. This allows you to use the newest APIs in Google Play services and reach most of the devices in the Android ecosystem. Devices older than Android 4.1 or devices without the Google Play services app are not supported.
Are there any relations between minimum google play services version and Android OS version or Android API level or Device model?
Play services currently keeps itself up to date on all devices that target API level 16 or higher.
If you want to fully understand all the documentation details about the relationship between Play services and Android API levels, you should read the documentation. Play services doesn't target anything about specific devices or models. It is purely dependent on API level.

How to decide which version of Google Play services to use?

I am working on an Android application which supports Android version 14 and above. I have compiled my application against Android version 21.
I have used Google Play Services 7.0.0. The application works fine on Android 21. But when I run the application on Android version 19, it throws the following exception
Google Play services out of date. Requires 7095000 but found 6183036
So, I want to know what should be the version of Google Play that I should include in my application so that it works fine on Android 14 and above.
I think you are trying to find an answer to your question using a wrong approach.
The version of the Google Play Services that you want to include depends on the APIs your application implements. Picking a version based on the device you want to support will affect your application performance in a negative way.
Nearby Connections API, Places API are added in the Google Play services 7.0. If your application is using any of those or other APIs added in this version of Play Services then, these features may not work if you specify a lesser version in the Gradle files.
Similarly, Mobile Vision API, Nearby Messages were introduced in the Google Play Services version 7.8. There is no way you can implement them by including an earlier version of Play Services even if you want to support Android 2.3 devices.
Maps and Location Based Services services had been updated in many Play Services versions. Each update has added a small feature to it and improved overall battery efficiency, responsiveness. The version number you are using will affect the battery life ...
In every update to the Google Play Services existing versions, new APIs are released and old ones are improved. Consider the APIs your application is implementing then decide which version of the Play Services you want your users to update so that they can use your application smoothly.
Many Android users regularly update their Google Play Services. Even if the user has a KitKat device or Ice Cream Sandwich they could have updated their Google Play Services to the latest 7.8 version or to an intermediate version.
You can change the minimum sdk version in gradle(app) file to run your application in lower versions of android.

Why would you choose Android API over Google APIs in the SDK on Eclipse?

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.
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.
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
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.

android in-app-billing not getting response in 2.1

I downloaded sample in-app-billing application and I tried to run that application on devices
its working fine for devices with android OS version 2.2.
but I am getting problem with devices having OS version 2.1.
Actually I am able to connect to market server and I am receiving response saying that request sent to server ,but I am not getting response about purchase state (ie whether the purchase is success or not).
we are getting this problem with android OS 2.1 devices,for OS 2.2 its working fine.(i tested in devices with OS 2.1 and 2.2 only)
From developer pages: http://developer.android.com/guide/google/play/billing/billing_subscriptions.html
System requirements for subscriptions
In-app purchases of subscriptions are supported only on devices that meet these minimum requirements:
Must run Android 2.2 or higher
Google Play Store app, version 3.5 or higher, must be installed
Google Play 3.5 and later versions include support for the In-app Billing v2 API or higher, which is needed to support handling of subscription products.

Categories

Resources