Your SlideShare is downloading. ×
0
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Android Cloud To Device Messaging
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Android Cloud To Device Messaging

2,154

Published on

Explanation about push for Android using the Android Cloud to Device Messaging Library.

Explanation about push for Android using the Android Cloud to Device Messaging Library.

Published in: Technology, News & Politics
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,154
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
95
Comments
0
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Fernando Cejas - @fernando_cejasFernando García - @fegabe
  • 2.  Introduction What’s Push? Push vs. Poll Cloud to device messaging Android Implementation Build your app? F.A.Q
  • 3.  “fastDove Push”  Who we are? App for this demo http://bit.ly/ac2dm_sample
  • 4. Push technology, or server push, describes a style of Internet-based communication where the request for a giventransaction is initiated by the publisher or central server.  Harder to implement  Less battery consumption  Constant connection
  • 5. Push me your news! Any news? No! Any news? No! Any news? No! New News! content! Any news? Yes! (News) Transfer content as soon as available Save device battery Reduce data traffic for user
  • 6.  HaIt allows third-party application servers to send lightweight messages to their Android applications C2DM makes no guarantees about delivery or the order of messages Anapplication on an Android device doesn’t need to be running to receive messages
  • 7.  Itdoes not provide any built-in user interface or other handling for message data Itrequires devices running Android 2.2 or higher that also have the Market application installed Ituses an existing connection for Google services
  • 8. 1. Register device for Push 3. Device receives message2. App server send message 4. Unregister device
  • 9.  Requesting a Registration IDC2DMessaging.register(this, "sender@gmail.com");
  • 10.  Receiving the Registration IDpublic class C2DMReceiver extends C2DMBaseReceiver { public C2DMReceiver() { super("sender@gmail.com"); } @Override public void onRegistered(Context context, String registrationId) { // TODO send registration ID to the app server } ...}
  • 11.  Receiving Messagespublic class C2DMReceiver extends C2DMBaseReceiver { ... @Override protected void onMessage(Context context, Intent intent) { String payload = intent.getStringExtra("payload"); // TODO handle the message }}
  • 12.  Android Manifest<application> ... <!-- required for AC2DM --> <service android:name="com.fastdove.sample.ac2dm.C2DMReceiver" /> <receiver android:name="com.google.android.c2dm.C2DMBroadcastReceiver" android:permission="com.google.android.c2dm.permission.SEND"> <intent-filter> <action android:name="com.google.android.c2dm.intent.REGISTRATION" /> <category android:name="com.fastdove.sample.ac2dm" /> </intent-filter> <intent-filter> <action android:name="com.google.android.c2dm.intent.RECEIVE" /> <category android:name="com.fastdove.sample.ac2dm" /> </intent-filter> </receiver> <!-- END required for AC2DM --></application>
  • 13.  Android Manifest<application> ...</application><!-- required for AC2DM --> <permission android:name="com.fastdove.notifications.demo.permission.C2D_MESSAGE" android:protectionLevel="signature" /> <uses-permission android:name="com.fastdove.notifications.demo.permission.C2D_MESSAGE" /> <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.WAKE_LOCK" /><!-- END required for AC2DM -->
  • 14.  Request Authorization Token$ curl https://www.google.com/accounts/ClientLogin -daccountType=GOOGLE -d source=Google-cURL-Example -dservice=ac2dm -d Email=sender@gmail.com -d "Passwd=***" Send Message$ curl --header "Authorization: GoogleLogin auth=authorization_id""https://android.apis.google.com/c2dm/send" -dregistration_id=device_registration_id -d "data.payload=yourmessage" -d collapse_key=something
  • 15. http://www.fastdove.com/@fastdove@fastdovedevinfo@fastdove.comFernando Cejas - @fernando_cejasFernando García - @fegabe
  • 16. Say thanks to the people I gotinformation from:@johanni@vogella

×