[H3 2012] 클라우드기반 앱 만들기 - baas.io SDK 활용

4,922 views
4,625 views

Published on

H3 2012 발표자료
클라우드기반 앱 만들기 - baas.io SDK 활용
-KTH 최숭

Published in: Technology
0 Comments
11 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,922
On SlideShare
0
From Embeds
0
Number of Embeds
865
Actions
Shares
0
Downloads
115
Comments
0
Likes
11
Embeds 0
No embeds

No notes for slide

[H3 2012] 클라우드기반 앱 만들기 - baas.io SDK 활용

  1. 1. 클라우드 기반 App 만들기baas.io SDK 활용개발실 I 기술전략팀 I최 숭 ( twitter : @chsoong )
  2. 2. Index01 Review02 든든한 backend App03 H3 App 개발 노트04 마무리 2
  3. 3. Review0 Review : Mobile App 은…  작게 만들고 작게 유지 하자!  Server 개발 산출물 공유하기  공통된 기능은 표준 방법으로 사용하고 그 다음 App 개발할 때도… 3
  4. 4. Review1 Review : Cloud , NoSQL, GA, DevOps  Dynamic  Flexible  Expandable  Scalable  Predictable  Stable 사진은 본문 내용과 관계 없습니다. 4
  5. 5. 02 든든한 Backend App  5분 안에 나만의 backend가…  Backend와 눈(目) 맞은 App  내 앱은 클라우드 기반!  Scenario 1 / 2 5
  6. 6. 바스아이오 시작하기 5분안에 시작하기https://baas.io 6
  7. 7. baas.io Quick Start이메일 회원가입 7
  8. 8. baas.io Quick Start새 앱 생성 8
  9. 9. baas.io Quick StartSDK 다운로드 9
  10. 10. baas.io Quick Startbaas.io 사용하기 10
  11. 11. baas.io Quick Start baas.io 사용하기 sandbox soulbus 11
  12. 12. Application Infobaas.io 사용하기 12
  13. 13. baas .io SDK 초기화 baas.io SDK 초기화1 User ID2 APP NAME3 END POINT - http://api.baas.io 13
  14. 14. baas .io SDK 초기화 Android SDK Initializebaasio.getInstance().init( this, "https://api.baas.io", // end point “baas.user", // 회원 ID “soulBus” // 앱 이름); 14
  15. 15. baas .io 개념도 baas.io 는 … App 전용 공간을 관리해주고..https://api.baas.io/<user_id>/<app_name> 15
  16. 16. REST API based baas.io모든 데이터를 REST 기반 API / SDK 로 서비스 가능합니다. Entity를 만들기만 하면 (POST)> GET < > PUT < > DELETE < 16
  17. 17. Building App with baas.io Scenario 1 17
  18. 18. Hello World Bus with baas.io 경성버스 앱1 서울 시내 버스 노선도 DB2 Stand Alone 형 18
  19. 19. Hello Bus with baas.io 경성버스 앱 2nd Edition1 신규 버스노선 DB Download2 DB Version 관리 19
  20. 20. baas.io - CollectionCollection 생성 dbversion 20
  21. 21. baas.io - Collection 엔티티 추가 {“seoul” : “1031.db“ }seoul : 1031.db 21
  22. 22. baas.io - CollectionDB생성 / API 구성완료 22
  23. 23. Hello Bus with baas.io 경성버스 앱 2nd Ed. 1 컬렉션에서 버전 정보 읽기 2 바뀐 버전 다운로드> SDK <queryEntitiesRequestAsync(“dbversion”);getFileAsync(“/sdcard”,“1031.busdb”); 23
  24. 24. Hello Bus App - File FILE Upload / Download – 1 API call Network Traffic Fee for All Free> SDK <getFileAsync(“/sdcard”,“1031.busdb”); 24
  25. 25. Hello Bus App – Collection Collection Key / Value Store Query JSON format> SDK <queryEntitiesRequestAsync(“dbversion”); 25
  26. 26. QUIZ~~~Building App with baas.io Scenario 2 26
  27. 27. Building App with baas.io Scenario 3 H3 App 27
  28. 28. H3 2012 App H3 App1 회원 가입2 회원 로그인3 공지사항 수신 28
  29. 29. H3 2012 App - User H3 App 회원 가입 회원 가입 (페이스북)SDK:AuthUtils.signup(“name”, “fullname”, “email”, “password”);https://<YAEP>/users 29
  30. 30. H3 2012 App – User (facebook) User - facebook facebook 개발자 페이지 OAuth 2.0SDK:AuthUtils.signupViaFacebook(“fb_token”);https://<YAEP>/auth/facebook?fb_access_token=<fb_access_token> 30
  31. 31. H3 2012 App – User (facebook) User - facebook Android App용 iOS App용https://developers.facebook.com/apps/ 31
  32. 32. H3 2012 App – Login Login Log-in Facebook Log-inbaas.io 는 access token 으로 권한 관리 지원 https://<YAEP>/auth?username=<uid>&password=<pwd> https://<YAEP>/auth/facebook?fb_access_token=<fb_access_token> 32
  33. 33. H3 2012 App – Role Role / PermissionGuest Role ( logout 상태 )Default Role ( login 상태 ) 33
  34. 34. H3 2012 App – RoleRole / Permission (GUEST) 34
  35. 35. H3 2012 App – Push Push – 공지사항 수신Map<String, Object> properties = new HashMap<String, Object>(); properties.put("token", regId); baasio.getInstance().registerDeviceForPushAsync( properties, new ApiResponseCallback() { public void onException(Exception e) { } public void onResponse(ApiResponse response) { GCMRegistrar.setRegisteredOnServer(getActivity(), true); } }); 35
  36. 36. H3 2012 App – PushPush 인증서 관리 36
  37. 37. H3 2012 App – Push 예약발송 or 즉시발송Push 메시지 전송 iOS or Android or All 전체 or 특정 사용자 37
  38. 38. baas.io - Bonus baas.io 모바일 고객센터 - 2층 중회의실 13:00 ~https://<MAEP>/help 38
  39. 39. baas.io - BonusLocation Service - geofencing - geocoding / R-geocoding - 주변검색 39
  40. 40. baas.io SDK supports … baas.io SDKis based on REST API 40
  41. 41. 03 H3 app 개발 노트 41
  42. 42. H3 app 탄생비화H3app 은 이렇게 태어났습니다.올해 사전등록은 앱으로 받으면 어떨까? 42
  43. 43. H3 app 은 ..이 화면 오기까지 ….
  44. 44. H3 app 은 .. H3app 개발 첫째주 공지 사항 /notice 회원 가입 /users 로그인 /auth 인기투표 /vote 사전등록 /registrationH3 app : https://api.baas.io/h3conf/h3app 44
  45. 45. H3 app 은 .. H3app 개발 둘째주 공지 사항 GET https://MAEP/notice 회원 가입 POST https://MAEP/users 로그인 GET https://MAEP/auth 인기투표 PUT https://MAEP/vote/<uuid> 사전등록 POST https://MAEP/registrationH3 app : https://api.baas.io/h3conf/h3app 45
  46. 46. H3 app 은 .. H3app - 공지사항GET https://MAEP/notice 46
  47. 47. H3 app 은 .. H3app - 인기투표PUT https://MAEP/vote/<uuid> 47
  48. 48. H3 app 은 .. H3app - 사전등록POST https://MAEP/registration 48
  49. 49. H3 app 은 ..으으 앱 속도가 느리다 !!! 49
  50. 50. H3 app 은 .. H3app – H3 info{ "uuid": "327003b6-086f-11e2-ab9e-020045a50031", "created": 1348728445513, "modified": 1351300623928, GET https://MAEP/h3info "NOTICE_UPDATED_AT": "2012-10-23T10:53+09:00", "TRACK_ENABLED": "true", "TRACK_UPDATED_AT": "2012-10-27T10:16+09:00", "VOTE_LIMIT_COUNT": "7“} 50
  51. 51. H3 app 은 .. H3app – Lessons Learned 단말내의 캐시 처리용 DB 구성 ( 3G 느려요 ~~ ) 컬랙션 설계시 누락/추가/보완은 단순하게 반복 ( 작게작게 ) 최근 업데이트 날짜 확인후 업데이트 결정 (h3info) 서버 개발자 업무중 상당 부분을 내가 직접 가능.( This is 4 U : - baas.io 개발팀 ) 51
  52. 52. 04 마무리  이것만은 꼭  baas.io 는 여러분에게 52
  53. 53. Ending 내가 할 일은?Closed Beta 계정이 있다면 열공 !OAuth/REST 관련 기본개념 익히기Hands on Lab Ready for U ! 53
  54. 54. Ending baas.io 는 여러분에게앱 개발자는 물론 앱 사용자까지 배려하는“모바일 고객센터”를 내장한 최초의 BaaS.개발자 채널(H3,개발자 블로그) 을 통한다양한 의견 수렴과 기술공유 제공Backend 는 물론 앱스플랜트 등의 인프라를지원하는 baas.io 가 되겠습니다. 54
  55. 55. 감사합니다.개발실 / 기술전략팀 / 최숭 chsoong@kthcorp.com Twitter: @chsoong

×