Depending on your experience level it can get pretty hard. I would suggest you use
GCM Google Cloud Messaging for Android
It's a push notification system that can deliver messages to anyone of the devices running your app. Your app on the device can process the message being received. The message size is 4096 bytes only so for sending larger files you can use:
Google Cloud Endpoints
This is a RPC api endpoint and it can store your files in between waiting for recipient to download the file
Here's a grate tutorial on Google Cloud Endpoints