Android InApp Subscription Architecture - java

I have read lot of documentation and blogs but could not find a concrete answer.
So I have an app where I need to integrate in-app weekly subscription and also have a backend server that stores user data so when the purchase is made I send data to the server that user is subscribed and update database and give the user access to the app.
I wanted to know how to handle the cases when a subscription is cancelled or ended. How to check that in the app?
What is the best architecture look like for In-app billing and Server?

Google Play doesn't have important documentation and even the lastest documentation for Billing 3.0 has some bugs, but if you are just looking for process and can figure out the code for yourself here is the in-app subscription architecture described by google on their official Android Developers channel on youtube. https://www.youtube.com/playlist?list=PLWz5rJ2EKKc9J8ylTbNo1mnwciEyMbxZG

Related

Rolling a user authentication system for Android app

I'm a bit confused on how I can implement a user system into my application.
For a small overview, the mobile application needs to allow users to login or register, follow other users, and favorite/like items.
I've checkout out the documentation on Google Cloud Platform for implementing User Auth:
https://developers.google.com/identity/protocols/OpenIDConnect
https://cloud.google.com/appengine/docs/standard/java/users/
https://cloud.google.com/appengine/docs/standard/java/oauth/
I've used Parse in the past, and would expect the Firebase User Auth system to offer a similar experience, however due to Firebase conflicts with App Engine, that route is a no-go.
I understand there is also the User API, which can be used for things like restricting Cloud Endpoints calls to logged in users.
How can I roll a user auth system for my application? The best solution that comes to mind would be to just store user emails and passwords in Google Cloud Datastore, and check if the combination exists when a user logs in. However, I'm fairly unfamiliar with creating user systems and this seems like it would come with some sort of security issues.
you can use Firebase Authentication with Google App Engine. Your information that you have to use manual scaling instance is not correct. This was a bug and were fixed. Please see the following post for more informations
Verify Firebase Token at Google App Engine

Android Google CloudSQL

Currently I stored data from my Android / Java app in SQLite on the device. I want to dump this delimited/structured data to a mysql insance on Google CloudSQL. I have a google cloud account, setup a DB and have the cloud back end all ready. I have plenty of DB experience but am weak on java, cloud, etc After months of seeking working examples (GAE?) I know about this link:
https://cloud.google.com/appengine/docs/java/cloud-sql/
But it's not complete.
Can someone just post a very simple app that successfully executes a simple insert from Android/Java into Google CloudSQL and include all the code needed to get the data to the CloudSQL instance?
If this is a duplicate question and the complete code sample is already on StackOverflow I will gladly read it. I have not found a complete example yet.
Thanks in advance.
Try using Firebase or Realm instead to facilitate data flow to your mobile App. Firebase is built on reactive programming model where data is saved in Friebase and automatically synced with client device. Realm goes a step ahead in having you abstract a true API call via its interface. And otherwise yes as others responded your mobile app HAS to actually call an API service and not CloudSQL directly

Android app - retrieving messages from Gmail

I'm a beginner learning android app development.
I have a requirement for a user to be able to Read messages (just the body content - text only) from a Gmail account (Read-only mail extraction?) and save the email content within the app.
I don't need to retrieve messages when the user is not actively using the app.
The app and SQLite database I am building sits on the phones internal local storage. I do not have a backend server.
I have looked at the Gmail API tutorial here: https://developers.google.com/gmail/api/guides/
As I understand, I need to use the Gmail API and ensure that a user of my app can authenticate as a Gmail user.
Is anyone able to advise:
1) if this is feasible to do without a back end server?
2) any tutorials as to how to approach this, or would you recommend just working through the material I listed above?
3) (I understand this is highly subjective) how substantial a task this is to undertake for a learner (This is an educational project, so I am limited by time - if it takes me more than 3-4 days I will run out of time!) An idea as to how long it might take someone who is experienced would help me to grasp the scale of the task.
Google uses Oauth2 to authenticate and track applications connected with a user's account. You will need to get a security key for app from google. Because you do not have server, you will want to get a client only key and not the service key. You can get the client key by going to the Google API Console. For help about how to let the user sign-in to their account you can look at this Android tutorials here. After you get the google sign-in working you can continue on to getting the Gmail messages.
It may seem like a complicated process, but you should be able to have in working in a short amount of time if you go through the tutorials on Google's developer's site. I got a similar app working in only about an hour. To add a nice user interface will take longer, but thats up to you.

Can I use Google Play Developer API on Android device?

I want to get expiration date of an subscription (in-app billing) but it seems to be that Google Play Developer API is designed just for server (backend) use. Am I right?
There is another way to get full subscription details?

In App Billing (To purchase a Module inside application)

What I need to do is to create an application in which few of the segments should be invisible for user in published version.However when user checkouts In App billing purchase module he would be able to access these segments(Which is basically a number of Screens).
As of Now I am able to integrate the Standard In-App billing demo application in my application.But I am still confused how to make these Segments available for the purchaser as soon as he successfully checkout through In-App billing module. I am afraid of publishing app as it is recommended as per Android Developer Guide. I've a perception in my mind that how it would be working but want to take live experience.
Can anybody tell me the proper procedure and guidance for testing the Application apparently before it to be delivered to client.
Any help would be highly appretiated.
Go through with this link :
Implementing In-app Billing (IAB Version 3)
It is having good explanation with good piece of example code.
You can set up test accounts also to test in-app before delivered to client.
Setting Up Test Accounts
Thanks.
You are allowed to enter demo users for In app billing. You can enter the email ids with testing privileges there.
Go to Settings tab in Developer Console where you'll find "Gmail accounts with testing access", which is defined as:
License Testing - In addition to the owner of this console the following users will get the License test response from the application. They can also make in-app purchases from APKs that have been uploaded but not been published yet.

Categories

Resources