App To App Communication

Hi, i am in the process of designing my first app (so please be patient with me :wink: The app allows 4 users to connect together through the app.

I understand / think that the usual way that apps connect and share information is by:

  • data is pushed to the app server
  • data is then pulled by the other apps connected to the same service

Obviously this normal method requires a good data signal which is something that i don’t want my app to reply on, so…

Question
Is there any other way that you can establish App to App communication without having to go through your App server and pushing and pulling the data… is it possible to establish App to App communication via bluetooth or WiFi or is this against iOS and Android development… thanks in advance for your help…

Well, there are ways of doing this with your server method. You can put network monitoring checkers in place. So try to upload your data to the server and save locally and retry later when network is available and try again. The server can then send a push notification to the other devices to fire off the download threads.

To do bluetooth connections in android, check the documentation: http://developer.android.com/guide/topics/connectivity/bluetooth.html

iOS, is a bit trickier. Check this: http://stackoverflow.com/questions/15580096/android-ios-direct-communication-bluetooth-is-it-possible

I hope that helps

Thanks, how do apps normally communicate with one another?

Well, it will come down to each apps desired function. But the majority of my apps communicate via http service and push notifications. As I usually do cross platform communication and it is the easiest way to communicate between android, blackberry and iOS devices

Excellent, so is my understanding below correct in relation to how most apps communicate:

I understand / think that the usual way that apps connect and share information is by:

  • data is pushed to the app server
  • data is then pulled by the other apps connected to the same service

If the apps ‘pull’ data, the implication is that they poll repeatedly which isn’t optimal for battery life, bandwidth or latency. Better to use push notifications, which will also make your app retain connectivity better when in a background state.

Yes, that is true. But you do not have to poll the service to pull the data and the data might be too big to send as payload on push notification. So then you send a push notification to the device to notify the app that there are new updates available. The app can then query the service to to download the data required

Yes, that should be a faily safe assumption.