I'm developing an Android app where users must be able to authenticate and then make calls to the YouTube Data API.
I have no problems authenticating the users with their main account, using Google Sign-In everything is easy and user friendly, both for me and the users.
The problem is that some Google services (eg Google+ and YouTube) allow a single Google account to have multiple related accounts (linked accounts) (eg multiple Google+ pages or multiple YouTube channels).
Unfortunately seems that Google Sign-In doesn't consider this use case. Every user is forced to log into their main account.
In my scenario this is a serious problem. It means that some users won't be able to log into their secondary YouTube channels.
The only solution I have so far is to use the web-based authentication process. But this is obviously worst in terms of user experience and also means that I must handle everything by myself, with a WebView-based solution.
I've already built a small library that does everything, but Google recommends to use the provided Client libraries for a lot of good reasons. The problem is that all their client libraries have the same problem in Android. (The Google API Client Library for Java relies on the AccountManager for Android, therefore has the same problem of Google Sign-In)
Does anyone know if I'm missing something? is there a native way to authenticate the user secondary accounts? or am I forced to use the web-based authentication?
The same problem was addressed in a 3 years old YouTube blog post, is it possible that there's no solution yet?
Apparently at the moment there is no other way to solve this problem.
Here is the link to the library I'm building, in case someone else will have the same issue. https://github.com/PierfrancescoSoffritti/GoogleWebOAuth
Hopefully Google will solve the issue in the future.
Google Sign-in has similar limitations on iOS, but there's an alternative library,
Google's GTMAppAuth, that can be used instead. AppAuth looks like the parallel library for Android – would that satisfy this use case?
This SO question has some more iOS-specific info.
Related
We are writing an application in Unity3D for both iOS and Android and we'd like to use the provided Social API to retrive and post the highScores on iOS (using GameCenter) and Android (using Google Play Game Services).
To keep the application simple, its weight low and to avoid cross-compilation extra setups we'd prefer not to use external plugins (unless point 4 is true).
I googled around for documentation and tutorials and I found THIS ONE.
The implementation has been done in C#, but since the Unity guide also provides a c# version it went all straight forward.
However we couldn't manage to get this work, probably also because we don't understand well how this API really work.
First of all: the Unity guide states that "It [the api] provides a unified interface to different social back-ends, such as XBox Live or GameCenter", but in the implementation is not specified which social back-end is being used. How unity knows that? It switches depending on the platform?
Second: I understood in various guides that the GUI provided to show the leaderboard is directly provided by the host platform and from the console log i get these following success messages:
Authenticated, checking achievements
Error: no achievements found
Successfully reported achievement progress
but running the application in the editor, in a build made for windows or an apk used in BlueStacks, i get the same message when I call the function Social.ShowLeaderboardUI(); which is
ShowLeaderboardUI not implemented
I could expect it from the editor and the exe, but BlueStack emulates Android and i would be surprised if it doesn't provide the google play services. However i also read about a "sandbox mode" which is the one that should run in the editor and this leads to point three:
I can't find a way to set this sandbox mode, at least not from that guide.
Fourth point: Unity has a GameCenter class, but no classes for the Google Play Games Services, so: I can do what I want with iOS but I need an external plugin which implements the ISocial interface for Android?
Fifth point: How do i handle authentication in both sandbox and deploy mode?
As you can see I'm surely missing something on the coding side, conceptual side or both. Can you provide a step-by-step procedure on how to achieve what i need? I don't need to get pieces of source code, but if someone can explain me well how this API works it would be great.
Thanks in advance
For Android:
To integrate Google Play Service into Unity, you need to use a plugin. You can find the Google supported plugin here. You can find information on how leaderboards work here. Essentially how it works is:
You create the leaderboard in the Google Play Developer Console
You submit scores to the leaderboard created (at whenever you determin is the appropriate time)
Google Play Services sends a response back telling if it's a high score or not.
I suggest you take a look at the Cubic Pilot_4.6 sample as that demonstrates how to implement leaderboards. Also, you really ought to test this on a physical device, due to how emulators may have trouble handling Google Play Services and account logins.
As far as authentication goes, Google Play Services takes care of most of it for you. You can probably see more in the samples (Social.localUser.Authenticate).
Current implementation does only provide implementation for GameCenter and XboxLive. There's a property Social.Active which can be used to modify what social platform is used. You can set a object which implements ISocialPlatform but im not sure if that interface is fully open - thus, im not sure if anyone can implement that..
I want to add in app purchases to my Android app. I know I can use Google In-App Billing API, but I want to know if there are other libraries I could use that provide a more complete solution so I don't have to write as much code. I know there is Urban Airship but their fees are high. Anybody know of anything else? Are there any big names? Ideally, user would be able to pay using a variety of payment methods. Support for iOS would be nice.
Please note that Google policy differs between paying for virtual goods where you have to use Google APIs, or paying for physical goods where you can use other 3rd parties.
Also some countries are not supported by Google checkout so I guess in these countries you can use 3rd party also for virtual stuff.
This is a direct question so I will use my own company to answer
You can try ZooZ, both for Android and iOS
www.zooz.com
Does exist some software for developers that is able to upload applications into Android Market (Google Play)? I want to automate this process, because I have very many apps in Market. Official or unofficial, no matter.
The API (http://code.google.com/p/android-market-api/) here is for emulating the android marketplace to pull data. You'd have to mimick the login onto the android marketplace developer center then use some kind of DOM Crawler like (symphony dom crawler to navigate and use GET/POST to mimick the calls for uploading).
Login to Google with PHP and Curl, Cookie turned off?
I'm not aware of any official API that allows this. I doubt Google would be keen to implement it as it could encourage submission of vast numbers of auto-generated apps.
The nearest I've seen is this unofficial API to read data, but as far as I'm aware there's no facility to submit apps:
http://code.google.com/p/android-market-api/
Google has presented a new API to work with Google Play Developer Console. Here is the link for it's description: https://developers.google.com/android-publisher/
Is there any way to integrate google+ with my app. So that from my app, I can
Read the posts
Post something on my wall
Access different circles
At least post something
Did google provide any Api or SDK for this?
The API has now been announced at: http://googlecode.blogspot.com/2011/09/getting-started-on-google-api.html and the official homepage is: http://developers.google.com/+/
As of 29/07/2011, Google has not provided an SDK yet.
The only thing you can do for now is add a 'plus' button like the 'like' button from facebook in your webpages using javascript - look here.
EDIT:
As #ade said, the API has now been announced. so my answer is no loner relevant.
We definitely plan to involve developers and publishers in the Google+ project, but we don’t have specific details to share just yet. Please stay tuned and sign up to receive more information about Google+ developer opportunities. https://services.google.com/fb/forms/plusdevelopers/
You can only read posts using the newly announced Google plus API but you cannot share or access different circles.
More functionality is yet to be added to the Google plus API.
In order to effectively use the new Google plus API you need to authenticate the new user, so that you can serve large number of people or else you will run out of the API calls which are restricted to 1000 per day.
Does anyone know if Amazon has an open API for their Android AppStore?
Full disclosure: My team builds the Amazon Appstore SDK. Even though I work for A2Z, any opinions stated are my own, not my employer's.
As of the time of this answer, Amazon has a private beta for the In-App Purchase API. If you want access to the API, please fill out the form at:
http://developer.amazon.com/
You have to create an account to access the request form.
The current offerings for Developers that want to integrate Amazon into Applications can be found here. I have not seen a API for the Android App, or any other mobile App for that matter. Which would lead me to believe that they dont provide an API for that. I would suggest that you use the Web Service API, that may be able to work for you depending on what you are trying to do.