Submit Search
Upload
透過 GCM 實作跨裝置資料同步
•
1 like
•
1,566 views
Rogery Yang
Follow
2013.07.25 @Android Taipei
Read less
Read more
Technology
Business
Report
Share
Report
Share
1 of 24
Download now
Download to read offline
Recommended
What antonio enjoys doing
What antonio enjoys doing
Antonio Mazzitelli
Tour di presentazione "culturability - spazi d'innovazione sociale"
Tour di presentazione "culturability - spazi d'innovazione sociale"
Roberta Franceschinelli
Property in greater noida
Property in greater noida
primrose infra
наш сервер клуба рестораторов магнат
наш сервер клуба рестораторов магнат
Guslikulinar
Land Royals
Land Royals
landroyals
Genetiksignal_crowdfund
Genetiksignal_crowdfund
Gina Devasahayam
Capstone_Defense_August_2
Capstone_Defense_August_2
Debbie Powers
Henryk Konrad
Henryk Konrad
pzgomaz
Recommended
What antonio enjoys doing
What antonio enjoys doing
Antonio Mazzitelli
Tour di presentazione "culturability - spazi d'innovazione sociale"
Tour di presentazione "culturability - spazi d'innovazione sociale"
Roberta Franceschinelli
Property in greater noida
Property in greater noida
primrose infra
наш сервер клуба рестораторов магнат
наш сервер клуба рестораторов магнат
Guslikulinar
Land Royals
Land Royals
landroyals
Genetiksignal_crowdfund
Genetiksignal_crowdfund
Gina Devasahayam
Capstone_Defense_August_2
Capstone_Defense_August_2
Debbie Powers
Henryk Konrad
Henryk Konrad
pzgomaz
Goins slideshare
Goins slideshare
Karen_Goins
Peta watak
Peta watak
kuliahpismp09
Opportunities for children everywhere to receive quality education
Opportunities for children everywhere to receive quality education
David Yeng
The moses bridge, the netherlands
The moses bridge, the netherlands
Nataly Auger
Author Level Bibliometrics
Author Level Bibliometrics
Paul Wouters
кулинарная продукция
кулинарная продукция
Guslikulinar
đồNg phục nghi thức đội mẫu mã đẹp ở đâu tại hà nội tốt nhất 2013, nghệ an, n...
đồNg phục nghi thức đội mẫu mã đẹp ở đâu tại hà nội tốt nhất 2013, nghệ an, n...
nhatruongvietnam
開放原始碼 Ch1.3 intro - oss - google codes (ver 2.0)
開放原始碼 Ch1.3 intro - oss - google codes (ver 2.0)
My own sweet home!
20160521 社群實務及組織協作
20160521 社群實務及組織協作
ericpi Bi
20151127 kh gov-data-training
20151127 kh gov-data-training
ericpi Bi
導入 Flutter 前你應該知道的事
導入 Flutter 前你應該知道的事
Weizhong Yang
Android裝置開發過程的軟硬整合關鍵及挑戰
Android裝置開發過程的軟硬整合關鍵及挑戰
tick
北區13校GDSC聯合流會.pdf
北區13校GDSC聯合流會.pdf
ssuserded2d4
Android 系統的歷史、發展策略與技術創新 v1.1.0
Android 系統的歷史、發展策略與技術創新 v1.1.0
信宏 陳
Android 基礎開發課程
Android 基礎開發課程
Duran Hsieh
App introduction
App introduction
Jerromy Lee
Android 研发的昨天、今天 和 明天
Android 研发的昨天、今天 和 明天
oasisfeng
讓 HTML5 走進 IPTV Framework
讓 HTML5 走進 IPTV Framework
Jollen Chen
Android event retrospect
Android event retrospect
rogeryi
Weic2015 docker
Weic2015 docker
Ray Lin
Maker to startup v1.2 4 27-2016-s
Maker to startup v1.2 4 27-2016-s
Ray Tai
Flutter 踩雷心得
Flutter 踩雷心得
Weizhong Yang
More Related Content
Viewers also liked
Goins slideshare
Goins slideshare
Karen_Goins
Peta watak
Peta watak
kuliahpismp09
Opportunities for children everywhere to receive quality education
Opportunities for children everywhere to receive quality education
David Yeng
The moses bridge, the netherlands
The moses bridge, the netherlands
Nataly Auger
Author Level Bibliometrics
Author Level Bibliometrics
Paul Wouters
кулинарная продукция
кулинарная продукция
Guslikulinar
đồNg phục nghi thức đội mẫu mã đẹp ở đâu tại hà nội tốt nhất 2013, nghệ an, n...
đồNg phục nghi thức đội mẫu mã đẹp ở đâu tại hà nội tốt nhất 2013, nghệ an, n...
nhatruongvietnam
Viewers also liked
(7)
Goins slideshare
Goins slideshare
Peta watak
Peta watak
Opportunities for children everywhere to receive quality education
Opportunities for children everywhere to receive quality education
The moses bridge, the netherlands
The moses bridge, the netherlands
Author Level Bibliometrics
Author Level Bibliometrics
кулинарная продукция
кулинарная продукция
đồNg phục nghi thức đội mẫu mã đẹp ở đâu tại hà nội tốt nhất 2013, nghệ an, n...
đồNg phục nghi thức đội mẫu mã đẹp ở đâu tại hà nội tốt nhất 2013, nghệ an, n...
Similar to 透過 GCM 實作跨裝置資料同步
開放原始碼 Ch1.3 intro - oss - google codes (ver 2.0)
開放原始碼 Ch1.3 intro - oss - google codes (ver 2.0)
My own sweet home!
20160521 社群實務及組織協作
20160521 社群實務及組織協作
ericpi Bi
20151127 kh gov-data-training
20151127 kh gov-data-training
ericpi Bi
導入 Flutter 前你應該知道的事
導入 Flutter 前你應該知道的事
Weizhong Yang
Android裝置開發過程的軟硬整合關鍵及挑戰
Android裝置開發過程的軟硬整合關鍵及挑戰
tick
北區13校GDSC聯合流會.pdf
北區13校GDSC聯合流會.pdf
ssuserded2d4
Android 系統的歷史、發展策略與技術創新 v1.1.0
Android 系統的歷史、發展策略與技術創新 v1.1.0
信宏 陳
Android 基礎開發課程
Android 基礎開發課程
Duran Hsieh
App introduction
App introduction
Jerromy Lee
Android 研发的昨天、今天 和 明天
Android 研发的昨天、今天 和 明天
oasisfeng
讓 HTML5 走進 IPTV Framework
讓 HTML5 走進 IPTV Framework
Jollen Chen
Android event retrospect
Android event retrospect
rogeryi
Weic2015 docker
Weic2015 docker
Ray Lin
Maker to startup v1.2 4 27-2016-s
Maker to startup v1.2 4 27-2016-s
Ray Tai
Flutter 踩雷心得
Flutter 踩雷心得
Weizhong Yang
Docker基礎
Docker基礎
Perry Tsai
GAME-NEXT SUMMIT 会议活动企划及合作方案
GAME-NEXT SUMMIT 会议活动企划及合作方案
GAMENEXT Works
Hyper 基于hypervisor的docker引擎.pptx
Hyper 基于hypervisor的docker引擎.pptx
Xu Wang
GDG Taichung - Flutter and Firebase.pdf
GDG Taichung - Flutter and Firebase.pdf
Duran Hsieh
1_大二班_資料視覺化_20221028.pdf
1_大二班_資料視覺化_20221028.pdf
FEG
Similar to 透過 GCM 實作跨裝置資料同步
(20)
開放原始碼 Ch1.3 intro - oss - google codes (ver 2.0)
開放原始碼 Ch1.3 intro - oss - google codes (ver 2.0)
20160521 社群實務及組織協作
20160521 社群實務及組織協作
20151127 kh gov-data-training
20151127 kh gov-data-training
導入 Flutter 前你應該知道的事
導入 Flutter 前你應該知道的事
Android裝置開發過程的軟硬整合關鍵及挑戰
Android裝置開發過程的軟硬整合關鍵及挑戰
北區13校GDSC聯合流會.pdf
北區13校GDSC聯合流會.pdf
Android 系統的歷史、發展策略與技術創新 v1.1.0
Android 系統的歷史、發展策略與技術創新 v1.1.0
Android 基礎開發課程
Android 基礎開發課程
App introduction
App introduction
Android 研发的昨天、今天 和 明天
Android 研发的昨天、今天 和 明天
讓 HTML5 走進 IPTV Framework
讓 HTML5 走進 IPTV Framework
Android event retrospect
Android event retrospect
Weic2015 docker
Weic2015 docker
Maker to startup v1.2 4 27-2016-s
Maker to startup v1.2 4 27-2016-s
Flutter 踩雷心得
Flutter 踩雷心得
Docker基礎
Docker基礎
GAME-NEXT SUMMIT 会议活动企划及合作方案
GAME-NEXT SUMMIT 会议活动企划及合作方案
Hyper 基于hypervisor的docker引擎.pptx
Hyper 基于hypervisor的docker引擎.pptx
GDG Taichung - Flutter and Firebase.pdf
GDG Taichung - Flutter and Firebase.pdf
1_大二班_資料視覺化_20221028.pdf
1_大二班_資料視覺化_20221028.pdf
More from Rogery Yang
時間管理系列(7)建立工作的優先次序
時間管理系列(7)建立工作的優先次序
Rogery Yang
時間管理系列(6)讓聖靈管理你的時間
時間管理系列(6)讓聖靈管理你的時間
Rogery Yang
時間管理系列(5)建立行動清單
時間管理系列(5)建立行動清單
Rogery Yang
時間管理系列(4)檢視自己的時間
時間管理系列(4)檢視自己的時間
Rogery Yang
時間管理系列(3)擺脫沒有次序的生活
時間管理系列(3)擺脫沒有次序的生活
Rogery Yang
時間管理系列(2)如何調整你的目標
時間管理系列(2)如何調整你的目標
Rogery Yang
時間管理系列(1)林書豪 榮耀的背後(鍛練篇)
時間管理系列(1)林書豪 榮耀的背後(鍛練篇)
Rogery Yang
More from Rogery Yang
(7)
時間管理系列(7)建立工作的優先次序
時間管理系列(7)建立工作的優先次序
時間管理系列(6)讓聖靈管理你的時間
時間管理系列(6)讓聖靈管理你的時間
時間管理系列(5)建立行動清單
時間管理系列(5)建立行動清單
時間管理系列(4)檢視自己的時間
時間管理系列(4)檢視自己的時間
時間管理系列(3)擺脫沒有次序的生活
時間管理系列(3)擺脫沒有次序的生活
時間管理系列(2)如何調整你的目標
時間管理系列(2)如何調整你的目標
時間管理系列(1)林書豪 榮耀的背後(鍛練篇)
時間管理系列(1)林書豪 榮耀的背後(鍛練篇)
透過 GCM 實作跨裝置資料同步
1.
Rogery! Android Team Leader! 透過
GCM 實作跨裝置資料同步 @Android Taipei
2.
• 關於 Rogery
& KKBOX Android Team • Concept & Idea • Implement • Demo • Q & A Agenda
3.
• 從 Android
1.0 開始研發 KKBOX Android, 開發經驗至今已四年以上 • 在 KKBOX 擔任 Android Team Leader • 熱愛音樂創作的工程師 http://youtu.be/IwsNKobAkS0 關於 Rogery
4.
• 產品:KKBOX Android,
KKBOX Music Store, UtaPass • 裝置:Handset, Tablet, STB 和車機 • 團隊人數從 1 人到 11 人 關於 KKBOX Android Team
5.
Concept & Idea
6.
GCM (Google Cloud
Message) • 幫助開發者發送推播訊息到各個 Android 裝置 • 首次在 Google IO 2012 亮相 • 前身是 C2DM (Cloud to Device Messaging)
7.
KKBOX use GCM •
Push NoPficaPon: 推播跟隨的臺長已經上線訊息 • 只用在訊息通知
8.
Concept & Idea 直到我看見…
9.
Google IO 2013
– StopWatch Demo
10.
Concept & Idea 怎麼能那麼即時同步?
11.
Concept & Idea Think:
KKBOX 能用在哪裡?
12.
Concept & Idea 歌單立即同步?!
13.
Polling vs Pushing •
Polling: 每個裝置定期去向 Server 問目前最新的狀態 • 目前 KKBOX 實作歌單同步的方式 • 容易實作 • 耗電:手機一直送連線、Server 一直收連線
14.
Polling vs Pushing •
Pushing: 當 Server 有狀態更新時去通知裝置 • 省電:連線數降低、Server Loading 降低
15.
Implement
16.
POC KKGCMSyncServer (Google App Engine) KKGCMSyncClient
17.
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
18.
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)
19.
Demo 1 POC: GCMSyncList
20.
Demo 2 KKBOX GCM
Sync
21.
Demo Source • KKGCMSyncServer
– GitHub - https://github.com/rogery/KKGCMSyncServer • KKGCMSyncClient – GtiHub - https://github.com/rogery/KKGCMSyncClient
22.
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/
23.
24.
Thank You rogeryyang@kkbox.com Rogery
Yang 楊哲豪(Rogery)
Download now