SlideShare una empresa de Scribd logo
1 de 43
Descargar para leer sin conexión
iBeacon - 爆速開発メソッド

実践iBeacon
ヤフー vs クラスメソッド!
Battle #5

CopyRight © Classmethod, Inc.

1
発表してる人
iPhoneアプリエンジニア
荒川 靖久
・Objective-C歴 7ヶ月ほど
・cocos2d for iphoneがやりたくて覚えた
・インターンでクラスメソッドに通っている
・iBeaconのあれこれを数件やった

CopyRight © Classmethod, Inc.

2
アジェンダ
- Phase1 はじめに  iBeaconを図で理解しよう

- Phase2 開発  iBeaconアプリ開発で抑えておくべきポイント

- Phase3 運用  開発 → 運用の流れを想定し、スムーズに開発しよう
CopyRight © Classmethod, Inc.

3
本日の目標
 iBeaconアプリ簡単!
運用してみよう!!

!
今ここで作る!!!!

CopyRight © Classmethod, Inc.

4
- Phase1 はじめに -

iBeaconを図で
理解しよう

CopyRight © Classmethod, Inc.

5
iBeaconとは…
(知らない人のためにザックリ)

CopyRight © Classmethod, Inc.

6
・iBeacon
  iOS 7から追加された近距離無線通信技術

CopyRight © Classmethod, Inc.

X
・iBeacon
  iOS 7から追加された近距離無線通信技術
・内部的には
  CoreBluetooth frameworkの
  Bluetooth Low Energy(BLE)で動いている

CopyRight © Classmethod, Inc.

X
・iBeacon
  iOS 7から追加された近距離無線通信技術
・内部的には
  CoreBluetooth frameworkの
  Bluetooth Low Energy(BLE)で動いている
・Beaconとデバイスの位置情報を知れる
  Beaconとデバイスの
  範囲内 IN / OUTの検知、おおよその距離
CopyRight © Classmethod, Inc.

X
図でまとめてみました

CopyRight © Classmethod, Inc.

X
検知エリア
IN

Beacon

CopyRight © Classmethod, Inc.

7
検知エリア
OUT

Beacon

CopyRight © Classmethod, Inc.

8
検知エリア

近い!!
大体3mのとこ

Beacon

CopyRight © Classmethod, Inc.

9
What’s Beacon??

CopyRight © Classmethod, Inc.

X
Beaconになり得るもの
・iOS7.0以降のデバイス
・Mac OS X PC
・BM1
・自作モジュール
CopyRight © Classmethod, Inc.

X
Phase1まとめ

CopyRight © Classmethod, Inc.

X
iPhoneアプリ開発環境がある

Mac Book Pro・iPhone・Xcode

誰でもiBeaconアプリが作れる!!
CopyRight © Classmethod, Inc.

X
- Phase2 開発 iBeaconアプリ開発で
抑えておくべきポイント

CopyRight © Classmethod, Inc.

10
できること

CopyRight © Classmethod, Inc.

X
・Beaconの範囲内に入った/出た時、何かする

・Beaconからの情報を毎秒検知して、何かする

CopyRight © Classmethod, Inc.

X
できないこと

CopyRight © Classmethod, Inc.

X
・GPSの様にデバイスの位置を特定する
・Beaconからの正確な距離を取得する
・情報を覗き見できないようにする

CopyRight © Classmethod, Inc.

X
開発時 最低限必要な決めごと

CopyRight © Classmethod, Inc.

11
・UUID(企業区分とか)
・major(施設区分とか)
・minor(店舗区分とか)
・Beaconの設置場所、配置図

CopyRight © Classmethod, Inc.

12
Phase2まとめ

CopyRight © Classmethod, Inc.

X
iBeacon単体で
色々できる訳ではない
自前
で実装かぁ

決済はできないの?

CopyRight © Classmethod, Inc.

13

店内地図を載せた
ナビにできない?
- Phase3 運用 -

開発 → 運用の流れを想定し
スムーズに開発しよう

CopyRight © Classmethod, Inc.

14
- ステップ1 -

利用するシーンを想定しよう

CopyRight © Classmethod, Inc.

15
入店時に通知
を送りたい

商品前で詳細情報
を表示したい

要求から見えてくる想定シーン

商品毎のクーポン

退店時にも通知
を送りたい

を出したいな

CopyRight © Classmethod, Inc.

16
・どの程度の距離でイベントを起こすかわかる
・Beaconが複数必要な場合の配置図などが
 想定できる(予算や取り付け工数の把握)

CopyRight © Classmethod, Inc.

17
- ステップ2 -

複数台のBeaconを管理しよう

CopyRight © Classmethod, Inc.

18
Beaconの配置施設 / 店舗が増える想定で...

配置場所などは企業単位

で一元管理したい

CopyRight © Classmethod, Inc.

19
ここからは図で…

CopyRight © Classmethod, Inc.

20
- よくあるフロー1 アプリ

サーバ

major minor

入店時、目印のBeaconから
major minorを取得し、サーバーに送信
CopyRight © Classmethod, Inc.

21
- よくあるフロー2 サーバ

アプリ

json

サーバからのjsonレスポンス
店のBeaconリストが返ってくる
CopyRight © Classmethod, Inc.

22
- よくあるフロー3 -

jsonを解析する

大体こんな感じ
CopyRight © Classmethod, Inc.

23
- よくあるフロー4 -

商品前で詳細情報

を表示したい

{
“major” : 1,
“minor” : 5,
“locationName” : “商品前”
}

major 1
minor 5
のBeaconが商品前

店舗内でキーとなるBeaconの近くに行く
CopyRight © Classmethod, Inc.

24
- よくあるフロー5 -

商品詳細情報が!
ご覧になれます!

商品前で通知を出す
CopyRight © Classmethod, Inc.

25
- 注意点 -

・Beaconの検知が遅延する場合がある
・建物内でも電波が不安定になる場合がある

CopyRight © Classmethod, Inc.

26
Phase3まとめ

CopyRight © Classmethod, Inc.

27
利用シーンの想定
綿密な実地検証が大事!

CopyRight © Classmethod, Inc.

28
本日の目標
 iBeaconアプリ簡単!
運用してみよう!!

!
今ここで作る!!!!

CopyRight © Classmethod, Inc.

29
Yahoo vs ClassMethod_battle5_iBeacon

Más contenido relacionado

La actualidad más candente

「I osアプリエンジニア養成読本」のここを読め
「I osアプリエンジニア養成読本」のここを読め「I osアプリエンジニア養成読本」のここを読め
「I osアプリエンジニア養成読本」のここを読めRikitake Oohashi
 
2011年5月28日 Android勉強会プレゼン資料
2011年5月28日 Android勉強会プレゼン資料2011年5月28日 Android勉強会プレゼン資料
2011年5月28日 Android勉強会プレゼン資料Eiichi Yoshikawa
 
iPhoneとAndroidのアプリ開発最新潮流
iPhoneとAndroidのアプリ開発最新潮流iPhoneとAndroidのアプリ開発最新潮流
iPhoneとAndroidのアプリ開発最新潮流Rakuten Group, Inc.
 
ABC2016Spring Androidアプリ実装アンチパターン(暫定)
ABC2016Spring Androidアプリ実装アンチパターン(暫定)ABC2016Spring Androidアプリ実装アンチパターン(暫定)
ABC2016Spring Androidアプリ実装アンチパターン(暫定)mokelab
 
Titaniumって何?
Titaniumって何?Titaniumって何?
Titaniumって何?Toshiro Yagi
 
2015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座12015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座1Hokuto Tateyama
 
きちんと理解できるiOS開発〜Auto Layout編
きちんと理解できるiOS開発〜Auto Layout編きちんと理解できるiOS開発〜Auto Layout編
きちんと理解できるiOS開発〜Auto Layout編mission:beGeek
 
北海道勉強会_20140531
北海道勉強会_20140531北海道勉強会_20140531
北海道勉強会_20140531Hiraku Komuro
 
非エンジニアのためのIT勉強会 ハイブリッドフレームワーク
非エンジニアのためのIT勉強会 ハイブリッドフレームワーク非エンジニアのためのIT勉強会 ハイブリッドフレームワーク
非エンジニアのためのIT勉強会 ハイブリッドフレームワークKaz Furukawa
 
導入事例から見る!Lychee Redmineの製品デモ
導入事例から見る!Lychee Redmineの製品デモ導入事例から見る!Lychee Redmineの製品デモ
導入事例から見る!Lychee Redmineの製品デモagileware_jp
 
Android学ぶを君へ。生き抜くためのナレッジ共有
Android学ぶを君へ。生き抜くためのナレッジ共有Android学ぶを君へ。生き抜くためのナレッジ共有
Android学ぶを君へ。生き抜くためのナレッジ共有Shinobu Okano
 
What's new in Android N at Google I/O extended in Fukuoka
What's new in Android N at Google I/O extended in FukuokaWhat's new in Android N at Google I/O extended in Fukuoka
What's new in Android N at Google I/O extended in FukuokaYuki Anzai
 
HTML5/JavaScriptで作るAndroidアプリ開発seminar
HTML5/JavaScriptで作るAndroidアプリ開発seminarHTML5/JavaScriptで作るAndroidアプリ開発seminar
HTML5/JavaScriptで作るAndroidアプリ開発seminarkujirahand kujira
 
Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Atsushi Harada
 
Whats's new in Android Studio at Google I/O extended in Fukuoka
Whats's new in Android Studio at Google I/O extended in FukuokaWhats's new in Android Studio at Google I/O extended in Fukuoka
Whats's new in Android Studio at Google I/O extended in FukuokaYuki Anzai
 
iOSアプリを審査に提出してみた話
iOSアプリを審査に提出してみた話iOSアプリを審査に提出してみた話
iOSアプリを審査に提出してみた話Hideki Abe
 
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発
クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発Osamu Monoe
 

La actualidad más candente (18)

「I osアプリエンジニア養成読本」のここを読め
「I osアプリエンジニア養成読本」のここを読め「I osアプリエンジニア養成読本」のここを読め
「I osアプリエンジニア養成読本」のここを読め
 
2011年5月28日 Android勉強会プレゼン資料
2011年5月28日 Android勉強会プレゼン資料2011年5月28日 Android勉強会プレゼン資料
2011年5月28日 Android勉強会プレゼン資料
 
iPhoneとAndroidのアプリ開発最新潮流
iPhoneとAndroidのアプリ開発最新潮流iPhoneとAndroidのアプリ開発最新潮流
iPhoneとAndroidのアプリ開発最新潮流
 
ABC2016Spring Androidアプリ実装アンチパターン(暫定)
ABC2016Spring Androidアプリ実装アンチパターン(暫定)ABC2016Spring Androidアプリ実装アンチパターン(暫定)
ABC2016Spring Androidアプリ実装アンチパターン(暫定)
 
Titaniumって何?
Titaniumって何?Titaniumって何?
Titaniumって何?
 
2015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座12015年度研究室プレ卒研用Android講座1
2015年度研究室プレ卒研用Android講座1
 
きちんと理解できるiOS開発〜Auto Layout編
きちんと理解できるiOS開発〜Auto Layout編きちんと理解できるiOS開発〜Auto Layout編
きちんと理解できるiOS開発〜Auto Layout編
 
北海道勉強会_20140531
北海道勉強会_20140531北海道勉強会_20140531
北海道勉強会_20140531
 
非エンジニアのためのIT勉強会 ハイブリッドフレームワーク
非エンジニアのためのIT勉強会 ハイブリッドフレームワーク非エンジニアのためのIT勉強会 ハイブリッドフレームワーク
非エンジニアのためのIT勉強会 ハイブリッドフレームワーク
 
導入事例から見る!Lychee Redmineの製品デモ
導入事例から見る!Lychee Redmineの製品デモ導入事例から見る!Lychee Redmineの製品デモ
導入事例から見る!Lychee Redmineの製品デモ
 
Android学ぶを君へ。生き抜くためのナレッジ共有
Android学ぶを君へ。生き抜くためのナレッジ共有Android学ぶを君へ。生き抜くためのナレッジ共有
Android学ぶを君へ。生き抜くためのナレッジ共有
 
What's new in Android N at Google I/O extended in Fukuoka
What's new in Android N at Google I/O extended in FukuokaWhat's new in Android N at Google I/O extended in Fukuoka
What's new in Android N at Google I/O extended in Fukuoka
 
HTML5/JavaScriptで作るAndroidアプリ開発seminar
HTML5/JavaScriptで作るAndroidアプリ開発seminarHTML5/JavaScriptで作るAndroidアプリ開発seminar
HTML5/JavaScriptで作るAndroidアプリ開発seminar
 
Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~Titanium Mobile ~本当にあったこわい話~
Titanium Mobile ~本当にあったこわい話~
 
Whats's new in Android Studio at Google I/O extended in Fukuoka
Whats's new in Android Studio at Google I/O extended in FukuokaWhats's new in Android Studio at Google I/O extended in Fukuoka
Whats's new in Android Studio at Google I/O extended in Fukuoka
 
iOSアプリを審査に提出してみた話
iOSアプリを審査に提出してみた話iOSアプリを審査に提出してみた話
iOSアプリを審査に提出してみた話
 
Android概要資料
Android概要資料Android概要資料
Android概要資料
 
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発
クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発クリスマス直前!HTML5 で作る♥はじめての iOS & Android アプリ開発
クリスマス直前! HTML5 で作る♥ はじめての iOS & Android アプリ開発
 

Destacado

ユニットテスト初学者がKiwiFramework非同期テストで失敗した
ユニットテスト初学者がKiwiFramework非同期テストで失敗したユニットテスト初学者がKiwiFramework非同期テストで失敗した
ユニットテスト初学者がKiwiFramework非同期テストで失敗したYuichi Adachi
 
iOS アプリのメンテナンス性を高めるための基本的な考え方
iOS アプリのメンテナンス性を高めるための基本的な考え方iOS アプリのメンテナンス性を高めるための基本的な考え方
iOS アプリのメンテナンス性を高めるための基本的な考え方kakegawa-atsushi
 
Vasily i os-20140403
Vasily i os-20140403Vasily i os-20140403
Vasily i os-20140403Yusuke Arai
 
1人でも頑張れる!Retty式開発環境
1人でも頑張れる!Retty式開発環境1人でも頑張れる!Retty式開発環境
1人でも頑張れる!Retty式開発環境Yoichiro Sakurai
 
Plannahのチーム開発とdeploy gateの紹介
Plannahのチーム開発とdeploy gateの紹介Plannahのチーム開発とdeploy gateの紹介
Plannahのチーム開発とdeploy gateの紹介Kenji Kinukawa
 
チームを加速させるRetty式開発術
チームを加速させるRetty式開発術チームを加速させるRetty式開発術
チームを加速させるRetty式開発術Yoichiro Sakurai
 
Plannahプロジェクトの開発環境とdeploy gateの紹介
Plannahプロジェクトの開発環境とdeploy gateの紹介Plannahプロジェクトの開発環境とdeploy gateの紹介
Plannahプロジェクトの開発環境とdeploy gateの紹介Kenji Kinukawa
 
Xcodeを便利に使って爆速開発する #yxcm
Xcodeを便利に使って爆速開発する #yxcm Xcodeを便利に使って爆速開発する #yxcm
Xcodeを便利に使って爆速開発する #yxcm Hiramatsu Ryosuke
 

Destacado (8)

ユニットテスト初学者がKiwiFramework非同期テストで失敗した
ユニットテスト初学者がKiwiFramework非同期テストで失敗したユニットテスト初学者がKiwiFramework非同期テストで失敗した
ユニットテスト初学者がKiwiFramework非同期テストで失敗した
 
iOS アプリのメンテナンス性を高めるための基本的な考え方
iOS アプリのメンテナンス性を高めるための基本的な考え方iOS アプリのメンテナンス性を高めるための基本的な考え方
iOS アプリのメンテナンス性を高めるための基本的な考え方
 
Vasily i os-20140403
Vasily i os-20140403Vasily i os-20140403
Vasily i os-20140403
 
1人でも頑張れる!Retty式開発環境
1人でも頑張れる!Retty式開発環境1人でも頑張れる!Retty式開発環境
1人でも頑張れる!Retty式開発環境
 
Plannahのチーム開発とdeploy gateの紹介
Plannahのチーム開発とdeploy gateの紹介Plannahのチーム開発とdeploy gateの紹介
Plannahのチーム開発とdeploy gateの紹介
 
チームを加速させるRetty式開発術
チームを加速させるRetty式開発術チームを加速させるRetty式開発術
チームを加速させるRetty式開発術
 
Plannahプロジェクトの開発環境とdeploy gateの紹介
Plannahプロジェクトの開発環境とdeploy gateの紹介Plannahプロジェクトの開発環境とdeploy gateの紹介
Plannahプロジェクトの開発環境とdeploy gateの紹介
 
Xcodeを便利に使って爆速開発する #yxcm
Xcodeを便利に使って爆速開発する #yxcm Xcodeを便利に使って爆速開発する #yxcm
Xcodeを便利に使って爆速開発する #yxcm
 

Similar a Yahoo vs ClassMethod_battle5_iBeacon

TKG Beacon開発
TKG Beacon開発TKG Beacon開発
TKG Beacon開発Aokiti
 
iOSアプリ開発のCI環境 - Jenkins編 -
iOSアプリ開発のCI環境 - Jenkins編 -iOSアプリ開発のCI環境 - Jenkins編 -
iOSアプリ開発のCI環境 - Jenkins編 -Toshiyuki Hirata
 
iQONの開発手法 at iQONエンジニアセミナー
iQONの開発手法 at iQONエンジニアセミナーiQONの開発手法 at iQONエンジニアセミナー
iQONの開発手法 at iQONエンジニアセミナーImamura Masayuki
 
チームではじめるJetpack compose
チームではじめるJetpack composeチームではじめるJetpack compose
チームではじめるJetpack composeyoshida261 default
 
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏Yusuke Hirao
 
C#でiPhoneアプリ開発 with MonoTouch
C#でiPhoneアプリ開発 with MonoTouchC#でiPhoneアプリ開発 with MonoTouch
C#でiPhoneアプリ開発 with MonoTouchShin Ise
 
マイコン入門(2)
マイコン入門(2)マイコン入門(2)
マイコン入門(2)拓海 岡本
 
プロ文.com 勉強会 Phase 1
プロ文.com 勉強会 Phase 1プロ文.com 勉強会 Phase 1
プロ文.com 勉強会 Phase 1Hiroki Toyokawa
 
ABC2012Spring 20120324
ABC2012Spring 20120324ABC2012Spring 20120324
ABC2012Spring 20120324Tak Inamori
 
React Nativeで始めるアプリ開発
React Nativeで始めるアプリ開発React Nativeで始めるアプリ開発
React Nativeで始めるアプリ開発Ryosuke Hara
 
Jenkinsを使おうよ
Jenkinsを使おうよJenkinsを使おうよ
Jenkinsを使おうよYohei Oda
 
classmethod devio2015 J-1 iBeacon
classmethod devio2015 J-1 iBeaconclassmethod devio2015 J-1 iBeacon
classmethod devio2015 J-1 iBeaconHiraku Komuro
 
iBeacon tips(potatotips27)
iBeacon tips(potatotips27)iBeacon tips(potatotips27)
iBeacon tips(potatotips27)光 佐藤
 
React NativeでTwitterクライアントを作ってみよう
React NativeでTwitterクライアントを作ってみようReact NativeでTwitterクライアントを作ってみよう
React NativeでTwitterクライアントを作ってみようdcubeio
 
Codeigniter3フレームアップデート
Codeigniter3フレームアップデートCodeigniter3フレームアップデート
Codeigniter3フレームアップデートtomohiro kitaura
 
Unityで本格戦国シュミレーションRPG 開発
Unityで本格戦国シュミレーションRPG 開発Unityで本格戦国シュミレーションRPG 開発
Unityで本格戦国シュミレーションRPG 開発dena_study
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#Yuta Matsumura
 

Similar a Yahoo vs ClassMethod_battle5_iBeacon (20)

TKG Beacon開発
TKG Beacon開発TKG Beacon開発
TKG Beacon開発
 
iOSアプリ開発のCI環境 - Jenkins編 -
iOSアプリ開発のCI環境 - Jenkins編 -iOSアプリ開発のCI環境 - Jenkins編 -
iOSアプリ開発のCI環境 - Jenkins編 -
 
iQONの開発手法 at iQONエンジニアセミナー
iQONの開発手法 at iQONエンジニアセミナーiQONの開発手法 at iQONエンジニアセミナー
iQONの開発手法 at iQONエンジニアセミナー
 
チームではじめるJetpack compose
チームではじめるJetpack composeチームではじめるJetpack compose
チームではじめるJetpack compose
 
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
プログラム組んだら負け!実はHTML/CSSだけでできること2015夏
 
C#でiPhoneアプリ開発 with MonoTouch
C#でiPhoneアプリ開発 with MonoTouchC#でiPhoneアプリ開発 with MonoTouch
C#でiPhoneアプリ開発 with MonoTouch
 
マイコン入門(2)
マイコン入門(2)マイコン入門(2)
マイコン入門(2)
 
プロ文.com 勉強会 Phase 1
プロ文.com 勉強会 Phase 1プロ文.com 勉強会 Phase 1
プロ文.com 勉強会 Phase 1
 
ABC2012Spring 20120324
ABC2012Spring 20120324ABC2012Spring 20120324
ABC2012Spring 20120324
 
React Nativeで始めるアプリ開発
React Nativeで始めるアプリ開発React Nativeで始めるアプリ開発
React Nativeで始めるアプリ開発
 
Jenkinsを使おうよ
Jenkinsを使おうよJenkinsを使おうよ
Jenkinsを使おうよ
 
classmethod devio2015 J-1 iBeacon
classmethod devio2015 J-1 iBeaconclassmethod devio2015 J-1 iBeacon
classmethod devio2015 J-1 iBeacon
 
T itanium概要
T itanium概要T itanium概要
T itanium概要
 
titanium_outline20111227
titanium_outline20111227titanium_outline20111227
titanium_outline20111227
 
DevOps、その前に
DevOps、その前にDevOps、その前に
DevOps、その前に
 
iBeacon tips(potatotips27)
iBeacon tips(potatotips27)iBeacon tips(potatotips27)
iBeacon tips(potatotips27)
 
React NativeでTwitterクライアントを作ってみよう
React NativeでTwitterクライアントを作ってみようReact NativeでTwitterクライアントを作ってみよう
React NativeでTwitterクライアントを作ってみよう
 
Codeigniter3フレームアップデート
Codeigniter3フレームアップデートCodeigniter3フレームアップデート
Codeigniter3フレームアップデート
 
Unityで本格戦国シュミレーションRPG 開発
Unityで本格戦国シュミレーションRPG 開発Unityで本格戦国シュミレーションRPG 開発
Unityで本格戦国シュミレーションRPG 開発
 
The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#The Twelve-Factor (A|M)pp with C#
The Twelve-Factor (A|M)pp with C#
 

Yahoo vs ClassMethod_battle5_iBeacon