36
Smart Link Android GCM & Account Manager

Android - Cloud Messaging & Account Manager

  • Upload
    -

  • View
    845

  • Download
    2

Embed Size (px)

Citation preview

Smart LinkAndroid GCM & Account Manager

Google Cloud Messaging

History

• C2DM (Cloud to Device Messaging)

• GCM (Google Cloud Messasing)

• CM (Cloud Messaging)

– Google이 기대하는 Android 개발자들의 반응

‘와~!!’ ‘죽인다~!!’

그런데..

– 실제 Android 개발자들 반응

‘아 씨x’ ‘또 바꿨네 또!!’

Deprecated

What’s new?

• iOS 지원

• Configuration File (google-services.json)

• Registration Token (vs Device ID)

• Device Group Messaging

• Topic Messaging (Pub/Sub)

• Collapsible/Non-collapsible

• TTL (Time To Live)

– David Kim

‘Topic Messaging 최고야~’

GCM Overviews

GCM Details

GCM Details

Topic Messaging

Non-Topic Topic

Topic Messaging

Topic Message 이점

• Thousand vs Million

• Pub / Sub

• 누가 메세지를 받을지는 client 가 정한다

• Backend 로직이 거의 없다

• 구질 구질하게 안살아도 된다

Topic Messaging 활용

https://play.google.com/store/apps/details?id=com.bigbang.shootingstar.android

그런데..

– David Kim

‘가끔씩 특정 사용자에게 메세지가 안 갑니다 ㅜㅜ’

Issues

• what if (Users >= 1M) ?

• 가끔 특정 사용자에게 메세지가 제대로 안갈 때 보정(Compensation) 방법

Android Account Manager

Account Manager

• This class provides access to a centralized registry of the user's online accounts. The user enters credentials (username and password) once per account, granting applications access to online resources with "one-click" approval.

• 출처: http://developer.android.com/reference/android/accounts/AccountManager.html

Reality

• 총 설치된 앱: 132개

• Account Manager를 이용하여 구현된 앱: 8개

‘대부분의 앱들은 로그인 어떻게 구현했을까?’

‘왜 AccountManager를 사용하지 않았을까?’

1. 귀찮아서

2. 어려워서

3. 그냥

4. Google이 시키는대로 하기 싫어서

Auth Sequence Diagram for Shooting Star

‘어렵지만 AccountManager 꼭 써야만 합니다.’

Why

• User Experience

• Android Sync Adapter

User Experience

• 설정 > 계정

• 사용자의 계정을 통합적으로 관리하는 곳

• 계정 관리 (예: 계정삭제)

• 화면 로그인 UI 없이 로그인 해야 하는 경우 처리 불가

Sync Adapter

• Schedule/Trigger based data transfer between server and client

• GMail

• Dropbox

• Facebook

• Evernote

• LinkedIn

‘어렵지만 AccountManager 꼭 써야만 합니다.’

How to

• To be continued…