Working with SQLite Database (CRUD operations) in Android

We’ve covered data storage options like SharedPreferences and Internal/External Storage before. It’s time to look at another option which is basically SQLite databases. Most data-driven Android applications will need a solution to store structured (relational) data. If that’s the case then SQLite is an amazing option that Android supports out of the box. The SQLite database management classes/APIs are available in the android.database.sqlite package. We’ll learn how to create an SQLite database and then save data into it as well as retrieve, modify and delete data.

Continue reading “Working with SQLite Database (CRUD operations) in Android”

Android Push Notifications with Parse.com

Update: Parse is shutting down. So you should start migrating.

If you want to send messages upstream and downstream from your Parse backend to your app and vice-versa then thankfully Parse does allow you to do that. Parse allows you to send unlimited push notifications to 1 million unique recipients (devices). Then they charge $0.05 per 1000 recipients extra. That’s awesome!

Continue reading “Android Push Notifications with Parse.com”

Using AsyncQueryHandler to Access Content Providers Asynchronously in Android

In our previous posts we discussed SQLite access and Content Providers. Now access to a content provider will involve accessing some sort of persistent storage like a database or a file under the hood. Accessing a storage can be a long task and hence this should not be executed on the UI thread which will delay the rendering and could even lead to ANRs. Hence, background threads should be responsible for handling provider’s execution.

Continue reading “Using AsyncQueryHandler to Access Content Providers Asynchronously in Android”

Android Push Notifications with Google Cloud Messaging

We’re all familiar with the notifications that we receive from various apps on Android (even other platforms like iOS) that keeps us informed about relevant and timely events that occur in the pertaining app. Like new chat messages from WhatsApp or Emails from Gmail or a new friend request on Facebook. They’re like alerts for any important events occuring inside the app when the user hasn’t or is not using it which is sort of obvious as one won’t keep an app open and stare at it for good.

Continue reading “Android Push Notifications with Google Cloud Messaging”

Android Interprocess Communication (IPC) with AIDL

Two processes cannot share memory and communicate with each other directly. So to communicate, objects have to be decomposed into primitives (marshalling) and transfered across process boundaries. To do this marshalling, one has to write a lot of complicated code, hence Android handles it for us with AIDL (Android Interface Definition Language). You should read the previous article on the binder framework to get some more idea.

Continue reading “Android Interprocess Communication (IPC) with AIDL”