Q&A from Cloud Android – Developing with Android, Google Cloud Endpoints, and GAE

I hope you enjoyed the talk and will find the slides + video (http://bit.ly/endpointsGTUG) helpful on getting started with Endpoints. The technology behind Endpoints and Client Libraries really lower the bar for many developers out there like myself. It’s an exciting time to take a great idea along with a few clicks here and there, you can have a mobile client with a scalable backend as your starting foundation.

Some questions came up during the break and after the talk. I would like to share those answers…

Q: I joined the Trusted Tester program but my app id has not been whitelisted therefore I can’t use Endpoints

A: The only knowledge I have about this is that the whitelist process has been replaced with another process as of mid January 2013. Simply signing up to the Trusted Tester program should be sufficient to get your unique app engine application ID capable of generating Client Libraries. Note that you don’t need to have a whitelisted app ID to create endpoints nor an internet connection. If you are on the Google Groups Endpoint Message board, try to ping Dan H. of Google Developer Relations to find out your status. I was able to create the demo contactapp01 app id two days ago without having to fill out an explanation form based on the steps in the video.

Q: Is JDO hard?

A: JDO is easy compared to writing select * col1, col2, colN from TABLE where MY_SPECIAL_CLAUSE GOES HERE.

Here is a sample query done in JDO using the typical application programmer “.” syntax:

Query q = pm.newQuery(Person.class);
q.setFilter("lastName == lastNameParam");
q.setOrdering("height desc");
q.declareParameters("String lastNameParam");

Here is that same query done in JDOQL which caters toward the old school SQL folks:

Query q = pm.newQuery("select from Person where lastName == lastNameParam parameters String lastNameParam order by height desc");

Either way, it will work when you execute the query:

List results = (List) q.execute(“Smith”);

Currently, I am more of a fan of the “.” approach but I think over time, one might just switch over writing JDOQL.

Q: When is Endpoints going to become production ready?

A: At the time of writing, it’s all speculation. There hasn’t been any indicators on the Google Group Endpoints Message board. Some people have production apps ready to go and they are waiting on Google to give the public go ahead. Internally, we know Google is using app engine (and likely endpoints) for a lot of it’s internal-facing web applications. Since it’s announcement at Google I/O 2012, Endpoints are still considered bleeding edge because of how it re-tooled all these existing technologies into a package that saves so much time for us developers. Individually, these tools are ready but as a package as whole, it’s getting very close.

Q: I have an existing application with it’s own data schema. I would like to make accessible to mobile devices through endpoints. How is this possible?

A: I’ll wash dishes and have my tablet on a shelf above me to keep me entertained. During one dish washing session, I remember coming across a Google I/O talk on strategies how to migrate existing apps. I believe this is the talk – http://youtu.be/4XBqdu8dYE8. Although I didn’t watch the whole thing because at the time I was just getting started and was only interested in writing new code.

Q: How do Endpoints work in iOS?

A: Objective-C HTTP code and the data models are generated to be referenced in your iOS project. However, I’m not well versed in this area. There is a document that describes how do you get your iOS app to talk to Endpoints but it is currently only available to members of the Trusted Tester group which is free to join.

Q: Is App Engine and/or Endpoints free?

A: Currently Endpoints are free as in beer. There is contemplation on making it a premium feature because of the amount of time it saves you. App Engine has a free usage tier that if your application starts to gain considerable traction, your credit card will be billed a very reasonable amount (so I have been told). If you are fortunate to become incredibly successful, you should consider migrating away from App Engine and invested in a fixed cost environment. The people at Google don’t pull off any dirty tricks to keep you locked into their PaaS (Platform as a Service). Just write your code against JDO or JPA. Also don’t have any code that would make use of low-level access to the DataStore API.

Again, it was great to meet you all in person. I hope we cross paths again.


Google+ Comments

About the author

Mark Lapasa

Mark Lapasa is a mobile developer who has released Native Android apps for both phones and tablets. He collaborates with business analysts, development and design teams to deliver engaging user experiences at the client-tier. He has many years of experience developing user interfaces for Enterprise Mobile, Healthcare, Financial, Social Gaming, and Online Gambling sectors. He blogs at http://knowledge.lapasa.net


5 pings

  1. Adesh Atole says:

    Actually, I have a question for you. The question is not related to the post written above. I just wanted to know that, is internet connection required for generating Google Appengine Cloud Endpoints library. I have a standalone (not connected to internet) machine, on which I’m trying to generate the Cloud Endpoints Library, but I am not able to generate the same. Is absence of Internet Connection the problem for that?

  2. Mark Lapasa says:

    Hey Adesh, you know I was very frustrated with this. I was in the subway with my laptop trying to generate a library but I learned the hard way. Endpoints you can make locally, no connection required. The client side libraries will be generated by Google’s webservices which requires an internet connection. I guess they made it server-side so that it all of us can be on the same services rather than different developers having different versions.

  1. Cloud Android – Developing with Android, Google Cloud Endpoints, and Google App Engine – Canada Cloud says:

    […] Access the slides here, and a follow up Q&A here. […]

  2. Google Apps for Healthcare – Canada Cloud says:

    […] Access the slides here, and a follow up Q&A here. […]

  3. Google Cloud Endpoints now publicly available » Mark Lapasa says:

    […] FAQ/Q&A: http://knowledge.lapasa.net/?p=893 […]

  4. Google App Innovation for Healthcare – An Introduction to Google Cloud End Points – Cloud Computing Best Practices says:

    […] Another of our speakers is Mark Lapasa, who will be providing a tailored version of the presentation he recently gave to the Toronto Google Developers Group – Developing with Android, Google Cloud Endpoints, and Google App Engine’. Access the slides here, and a follow up Q&A here. […]

  5. Google App Innovation for Healthcare – An Introduction to Google Cloud End … – SYS | Datacentre Management . org says:

    […] Another of a speakers is Mark Lapasa, who will be providing a tailored chronicle of a display he recently gave to a Toronto Google Developers Group – Developing with Android, Google Cloud Endpoints, and Google App Engine’. Access the slides here, and a follow up QA here. […]

Comments have been disabled.