Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
透過 GCM 實作跨裝置資料同步
Search
Rogery Yang
July 25, 2013
Technology
230
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
透過 GCM 實作跨裝置資料同步
Rogery Yang
July 25, 2013
Other Decks in Technology
See All in Technology
2026-08-05 IBM Z開発最前線!IBM Bob Premium Package for Zって何がすごいの?
yutanonaka
0
290
ソフトウェアサプライチェーンの構造的リスクとコンテナ環境の保護
kyohmizu
4
400
[ChatGPT Work LT]事務作業が苦手な人のための バックオフィスの「半」自動化
chimaki_iot
0
320
Bits Agent Builder の⼊⾨と活⽤事例
nulabinc
PRO
0
190
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
20k
Goでデータパイプラインを作ろう
sansantech
PRO
1
500
研究開発部の紹介 / Sansan R&D Profile
sansan33
PRO
4
24k
AI-DLC実践録_フルサイクル開発への挑戦
miyuc
0
250
Data Hubグループ 紹介資料
sansan33
PRO
0
3.2k
なぜ Temporal の大小比較には compare しかないのか / Why Does Temporal Only Have compare() for Comparisons
kazukihayase
1
150
関東Kaggler会発表資料
takoi
1
250
ボトムアップ文化が強い組織で セキュリティをどう根付かせていくかの現在進行形の話 / Making Security Stick in a Bottom-Up Organization
yamaguchitk333
0
240
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
WCS-LA-2024
lcolladotor
0
800
We Are The Robots
honzajavorek
0
300
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
440
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
GitHub's CSS Performance
jonrohan
1033
470k
From π to Pie charts
rasagy
0
300
Building the Perfect Custom Keyboard
takai
2
840
Being A Developer After 40
akosma
91
590k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Transcript
Rogery! Android Team Leader! 透過 GCM 實作跨裝置資料同步 @Android Taipei
• 關於 Rogery & KKBOX Android Team • Concept
& Idea • Implement • Demo • Q & A Agenda
• 從 Android 1.0 開始研發 KKBOX Android, 開發經驗至今已四年以上
• 在 KKBOX 擔任 Android Team Leader • 熱愛音樂創作的工程師 http://youtu.be/IwsNKobAkS0 關於 Rogery
• 產品:KKBOX Android, KKBOX Music Store, UtaPass • 裝置:Handset,
Tablet, STB 和車機 • 團隊人數從 1 人到 11 人 關於 KKBOX Android Team
Concept & Idea
GCM (Google Cloud Message) • 幫助開發者發送推播訊息到各個 Android 裝置 •
首次在 Google IO 2012 亮相 • 前身是 C2DM (Cloud to Device Messaging)
KKBOX use GCM • Push NoPficaPon: 推播跟隨的臺長已經上線訊息 • 只用在訊息通知
Concept & Idea 直到我看見…
Google IO 2013 – StopWatch Demo
Concept & Idea 怎麼能那麼即時同步?
Concept & Idea Think: KKBOX 能用在哪裡?
Concept & Idea 歌單立即同步?!
Polling vs Pushing • Polling: 每個裝置定期去向 Server 問目前最新的狀態 •
目前 KKBOX 實作歌單同步的方式 • 容易實作 • 耗電:手機一直送連線、Server 一直收連線
Polling vs Pushing • Pushing: 當 Server 有狀態更新時去通知裝置
• 省電:連線數降低、Server Loading 降低
Implement
POC KKGCMSyncServer (Google App Engine) KKGCMSyncClient
Registration (1) (2) (3) 1. register GCM -‐ ref.1
2. return GCM registraPon ID - ref.1 ref.2 3. put registracPon ID to server -‐ ref.3
Push & Sync (2) (3) (1) 1. push change to
server -‐ ref.1 ref.2 2. send sync message to GCM -‐ ref.3 3. client receive sync message from GCM -‐ ref.4 4. pull change from server -‐ ref.5 5. return change to client -‐ ref.6 (4) (5)
Demo 1 POC: GCMSyncList
Demo 2 KKBOX GCM Sync
Demo Source • KKGCMSyncServer – GitHub - https://github.com/rogery/KKGCMSyncServer • KKGCMSyncClient
– GtiHub - https://github.com/rogery/KKGCMSyncClient
References • C2DM - https://developers.google.com/android/c2dm/ • GeYng Started with
GCM – Android Developer -‐ http://developer.android.com/google/gcm/gs.html • Google Cloud Messaging for Android – Google I/O 2012 -‐ https://developers.google.com/events/io/2012/sessions/gooio2012/100/ • StopWatch Demo – Google I/O 2013 -‐ http://bradabrams.com/2013/06/google-io-2013-demo-android-studio- cloud-endpoints-synchronized-stopwatch-demo/
None
Thank You
[email protected]
Rogery Yang 楊哲豪(Rogery)