SlideShare uma empresa Scribd logo
1 de 50
Baixar para ler offline
iBeaconを使ってみよう!
気軽に使える近距離無線通信

!
underscore Inc.!
諏訪 悠紀
プロフィール

• underscore Inc.


(classmethodの子会社)!

• iOS / Android アプリの

企画 & 設計 & デザイン & 開発 &
リリース & プロモ & 運用 & 保守!

• Objective-C, Java, Ruby, ...
iBeaconアプリをみんなで作ろう!

• iBeaconは注目されているが、上手く
活用しているアプリが少ない!

• 機能はシンプルだが、うまく使うには
ちょっとコツがいる(かも)

iBeaconを上手く使って!
楽しいアプリを作ろう!
そもそも…

iBeaconアプリを作るためには

• Beaconを検知するアプリ!
• Beaconとなる端末
Estimote

iPhone

Mac

この2つのアプリの!
作りかたを解説します

が必要
アジェンダ
1

iBeaconアプリの作りかた!

•
•

領域観測の手順!
距離測定の手順!

2

Beaconアプリの作りかた!

3

ハマりどころ!

4

まとめ
1
iBeaconアプリの
作りかた
iBeaconの機能①

領域観測
Beaconの領域内(Region)への出入りを監視する

!
iBeaconの機能②

距離観測 (Ranging)
各Beaconとの距離を約1秒おきに監視する

遠
A

近
B
領域観測と距離観測の違い
距離観測の対象

領域観測の対象
Region

Beacon

Beacon

Beacon

それぞれが全く別な機能であると認識しておく
実装する前に…

• Xcode 5!
• iOS SDK 7!
• CoreLocation.framework
領域観測してみる
if ([CLLocationManager isMonitoringAvailableForClass:[CLBeaconRegion class]]) {

!

// CLLocationManagerの生成とデリゲートの設定
self.manager = [CLLocationManager new];
self.manager.delegate = self;

!

// 生成したUUIDからNSUUIDを作成
NSString *uuid = @"41282F26-524C-4F16-9E95-C06D90AF942A";
self.proximityUUID = [[NSUUID alloc] initWithUUIDString:uuid];

!

// CLBeaconRegionを作成
self.region = [[CLBeaconRegion alloc]
initWithProximityUUID:self.proximityUUID
identifier:@"jp.classmethod.testregion"];

!

// iBeaconによる領域観測を開始
[self.manager startMonitoringForRegion:self.region];
}
領域観測してみる

iBeaconに対応してい
るか判定する

if ([CLLocationManager isMonitoringAvailableForClass:[CLBeaconRegion class]]) {

!

// CLLocationManagerの生成とデリゲートの設定
self.manager = [CLLocationManager new];
self.manager.delegate = self;

!

// 生成したUUIDからNSUUIDを作成
NSString *uuid = @"41282F26-524C-4F16-9E95-C06D90AF942A";
self.proximityUUID = [[NSUUID alloc] initWithUUIDString:uuid];

!

// CLBeaconRegionを作成
self.region = [[CLBeaconRegion alloc]
initWithProximityUUID:self.proximityUUID
identifier:@"jp.classmethod.testregion"];

!

// iBeaconによる領域観測を開始
[self.manager startMonitoringForRegion:self.region];
}
領域観測してみる

iBeaconに対応してい
るか判定する

if ([CLLocationManager isMonitoringAvailableForClass:[CLBeaconRegion class]]) {

!

// CLLocationManagerの生成とデリゲートの設定
self.manager = [CLLocationManager new];
self.manager.delegate = self;

!

コマンドで生成可能

// 生成したUUIDからNSUUIDを作成
NSString *uuid = @"41282F26-524C-4F16-9E95-C06D90AF942A";
self.proximityUUID = [[NSUUID alloc] initWithUUIDString:uuid];

!

// CLBeaconRegionを作成
self.region = [[CLBeaconRegion alloc]
initWithProximityUUID:self.proximityUUID
identifier:@"jp.classmethod.testregion"];

!

// iBeaconによる領域観測を開始
[self.manager startMonitoringForRegion:self.region];
}
領域観測してみる

iBeaconに対応してい
るか判定する

if ([CLLocationManager isMonitoringAvailableForClass:[CLBeaconRegion class]]) {

!

// CLLocationManagerの生成とデリゲートの設定
self.manager = [CLLocationManager new];
self.manager.delegate = self;

!

コマンドで生成可能

// 生成したUUIDからNSUUIDを作成
NSString *uuid = @"41282F26-524C-4F16-9E95-C06D90AF942A";
self.proximityUUID = [[NSUUID alloc] initWithUUIDString:uuid];

!

// CLBeaconRegionを作成

アプリでの識別用

self.region = [[CLBeaconRegion alloc]
initWithProximityUUID:self.proximityUUID
identifier:@"jp.classmethod.testregion"];

!

// iBeaconによる領域観測を開始
[self.manager startMonitoringForRegion:self.region];
}
領域観測してみる
CLLocationManagerDelegateの実装
- (void)locationManager:(CLLocationManager *)manager
didEnterRegion:(CLRegion *)region
{
}
!
- (void)locationManager:(CLLocationManager *)manager
didExitRegion:(CLRegion *)region
{
}
領域観測してみる
CLLocationManagerDelegateの実装
- (void)locationManager:(CLLocationManager *)manager
didEnterRegion:(CLRegion *)region
{
}
!
- (void)locationManager:(CLLocationManager *)manager
didExitRegion:(CLRegion *)region
{
}

Exitは20秒∼1分後に通知される!
(バグではないので注意!)
デモ!①
入ったり出たりしたら
音を鳴らしてみる
Exitまで
長いですよね。。
距離測定してみる
- (void)locationManager:(CLLocationManager *)manager
didEnterRegion:(CLRegion *)region
{
[self.manager startRangingBeaconsInRegion:self.region];
}
距離測定してみる
- (void)locationManager:(CLLocationManager *)manager
didEnterRegion:(CLRegion *)region
{
[self.manager startRangingBeaconsInRegion:self.region];
}

領域内に入ったときに!
距離測定を開始する場合
距離測定してみる
- (void)locationManager:(CLLocationManager *)manager
didRangeBeacons:(NSArray *)beacons
inRegion:(CLBeaconRegion *)region
{
CLBeacon *beacon = beacons.firstObject;
switch (beacon.proximity) {
case CLProximityUnknown:
NSLog(@"CLProximityUnknown");
break;
case CLProximityImmediate:
NSLog(@"CLProximityImmediate");
break;
case CLProximityNear:
NSLog(@"CLProximityNear");
break;
case CLProximityFar:
NSLog(@"CLProximityFar");
break;
}
}
距離測定してみる
- (void)locationManager:(CLLocationManager *)manager
didRangeBeacons:(NSArray *)beacons
inRegion:(CLBeaconRegion *)region
{
CLBeacon *beacon = beacons.firstObject;
switch (beacon.proximity) {
case CLProximityUnknown:
NSLog(@"CLProximityUnknown");
break;
case CLProximityImmediate:
NSLog(@"CLProximityImmediate");
break;
case CLProximityNear:
NSLog(@"CLProximityNear");
break;
case CLProximityFar:
NSLog(@"CLProximityFar");
break;
}
}

配列で渡されるので!

それぞれのBeaconの!
距離を判定する
デモ!②
Beaconの状態を
監視してみる
Beaconの特定に使えるプロパティ
proximityUUID

double

Regionの識別値

major

NSNumber

Beaconの識別値①

minor

NSNumber

Beaconの識別値②

proximity

CLProximity

相対距離

accuracy

double

精度

rssi

NSInteger

電波強度
https://github.com/
suwa-yuki/
BeaconSample
2
Beaconアプリの
作りかた
Beaconアプリの機能

A

UUID = XXXX-...!
major = 1!
minor = 1

B

UUID = XXXX-...!
major = 1!
minor = 2
Beaconアプリの機能

A

UUID = XXXX-...!
major = 1!
minor = 1

B

UUID = XXXX-...!
16ビット符号なし整数!
major = 1!
(0∼65,535)
minor = 2
実装する前に…

• Xcode 5!
• iOS SDK 7!
• CoreLocation.framework!
• CoreBluetooth.framework
Beaconになってみる
- (void)viewDidLoad
{
[super viewDidLoad];

!

!

// 生成したUUIDからNSUUIDを作成
NSString *uuid = @"41282F26-524C-4F16-9E95-C06D90AF942A";
self.proximityUUID = [[NSUUID alloc] initWithUUIDString:uuid];
// CBPeripheralManagerを作成
self.peripheralManager
= [[CBPeripheralManager alloc] initWithDelegate:self
queue:nil
options:nil];
// アドバタイズ開始処理
if (self.peripheralManager.state
== CBPeripheralManagerStatePoweredOn) {
[self startAdvertising];
}

}
Beaconになってみる
- (void)viewDidLoad
{
[super viewDidLoad];

!

!

// 生成したUUIDからNSUUIDを作成
NSString *uuid = @"41282F26-524C-4F16-9E95-C06D90AF942A";
self.proximityUUID = [[NSUUID alloc] initWithUUIDString:uuid];
// CBPeripheralManagerを作成

アドバタイズできる
状態か判定する

self.peripheralManager
= [[CBPeripheralManager alloc] initWithDelegate:self
queue:nil
options:nil];
// アドバタイズ開始処理
if (self.peripheralManager.state
== CBPeripheralManagerStatePoweredOn) {
[self startAdvertising];
}
}
Beaconになってみる
- (void)startAdvertising
{
// CLBeaconRegionを作成

!

CLBeaconRegion *beaconRegion
= [[CLBeaconRegion alloc]
initWithProximityUUID:self.proximityUUID
major:1
minor:2
identifier:@"jp.classmethod.testregion"];
// NSDictionaryに変換
NSDictionary *beaconPeripheralData
= [beaconRegion peripheralDataWithMeasuredPower:nil];
// アドバタイズ開始
[self.peripheralManager startAdvertising:beaconPeripheralData];

}
Beaconになってみる
- (void)startAdvertising
{
// CLBeaconRegionを作成

!

作りたいBeaconを
設定する

CLBeaconRegion *beaconRegion
= [[CLBeaconRegion alloc]
initWithProximityUUID:self.proximityUUID
major:1
minor:2
identifier:@"jp.classmethod.testregion"];
// NSDictionaryに変換
NSDictionary *beaconPeripheralData
= [beaconRegion peripheralDataWithMeasuredPower:nil];
// アドバタイズ開始
[self.peripheralManager startAdvertising:beaconPeripheralData];

}
Beaconになってみる
- (void)startAdvertising
{
// CLBeaconRegionを作成

!

作りたいBeaconを
設定する

CLBeaconRegion *beaconRegion
= [[CLBeaconRegion alloc]
initWithProximityUUID:self.proximityUUID
major:1
minor:2
identifier:@"jp.classmethod.testregion"];
// NSDictionaryに変換
NSDictionary *beaconPeripheralData
= [beaconRegion peripheralDataWithMeasuredPower:nil];
// アドバタイズ開始
[self.peripheralManager startAdvertising:beaconPeripheralData];

}

電波強度(rssi値)は!
カスタマイズ可能
デモ!③
1台の端末で
Beaconを切り替える
テスト時に便利!
一家に一台
Beaconアプリ
https://github.com/
suwa-yuki/
BeaconSample
3
ハマりどころ
ハマりどころ①

アプリ起動時の領域観測
アプリ起動時(つまり領域観測開始時)に

端末がBeaconの領域内に居ると
didEnterRegion:が呼ばれない!

[self.manager requestStateForRegion:self.region];
ハマりどころ①

アプリ起動時の領域観測
- (void)locationManager:(CLLocationManager *)manager
didDetermineState:(CLRegionState)state
forRegion:(CLRegion *)region
{
switch (state) {
case CLRegionStateInside:
NSLog(@"CLRegionStateInside");
// 領域内に入ったときの処理
break;
case CLRegionStateOutside:
NSLog(@"CLRegionStateOutside");
// 領域内から出たときの処理
break;
case CLRegionStateUnknown:
NSLog(@"CLRegionStateUnknown");
break;
default:
break;
}
}
ハマりどころ①

アプリ起動時の領域観測
いい感じに領域観測する手順
1. startMonitoringForRegion:で領域観測を始める!
2. requestStateForRegion:で領域内か判定する!
3. 領域内であれば入ったときの処理を実行する!
4. 領域外であれば何もしない (Enterまで待機)
ハマりどころ②

Push通知に使いたい場合

• バックグランドでは、領域観測はできるが
距離観測はできない!

• startMonitoringForRegion:はバックグランド
OK!

• startRangingBeaconsInRegion:はバックグ
ランドNG (実行しても10秒くらいで終わる)
ハマりどころ②

Push通知に使いたい場合
領域観測∼距離観測の手順
1. アプリを起動したら領域観測開始!
2. didEnterRegion:ではRegionに入ったことだけ通
知する(特定のBeaconに入った通知に使わない)!
3. アプリが表示されたら距離観測を開始する!
4. didRangeBeacons:で処理を行う
ハマりどころ③

最も近いBeaconの判定
1. didRangeBeacons:は1秒おきに呼ばれる!
2. 取得できたBeaconのうち、一番近いBeacon
を判定する!
3. 一番近いBeaconをアプリ内で保持しておく!
4. 次のdidRangeBeacons:で判定した一番近い
Beaconと保持していたBeaconを比較する
ハマりどころ④

アプリ終了時の注意点

• startMonitoringForRegion:を呼んだあと

マルチタスクからアプリを終了させると
Beaconの領域内に入っても通知されない!!

• マルチタスクから消す = ”アプリからの通知は
不要”というユーザーの行為であると捉える
4
まとめ
まとめ

• iBeaconは手軽!(のはず)!
• 用法・用量を守って正しくお使いください!
• Beaconが世の中に出回らないうちは、アプ
リに組み込みましょう!

• アイデアを広げて楽しく便利なiBeaconアプ
リを作ってリリースしましょう!
おまけ

iOSアプリリリース中!

http://underscore-app.tumblr.com/
おまけ

iOSアプリリリース中!
iBeaconアプリは

まだ ない…
http://underscore-app.tumblr.com/
最後までご清聴いただき
誠にありがとうございました!

Mais conteúdo relacionado

Mais procurados

Cálculo do custo das mercadorias vendidas (cmv)
Cálculo do custo das mercadorias vendidas (cmv)Cálculo do custo das mercadorias vendidas (cmv)
Cálculo do custo das mercadorias vendidas (cmv)
simuladocontabil
 
Formulário DRE Mod Industrial V 3
Formulário DRE Mod   Industrial V 3Formulário DRE Mod   Industrial V 3
Formulário DRE Mod Industrial V 3
ctccecbg
 
バッチ処理にバインド変数はもうやめません? ~|バッチ処理の突発遅延を題材にして考えてみる~
バッチ処理にバインド変数はもうやめません? ~|バッチ処理の突発遅延を題材にして考えてみる~バッチ処理にバインド変数はもうやめません? ~|バッチ処理の突発遅延を題材にして考えてみる~
バッチ処理にバインド変数はもうやめません? ~|バッチ処理の突発遅延を題材にして考えてみる~
Ryota Watabe
 

Mais procurados (20)

Shibboleth IdP V3とアカデミックIDフェデレーション - OpenID Summit 2015
Shibboleth IdP V3とアカデミックIDフェデレーション - OpenID Summit 2015Shibboleth IdP V3とアカデミックIDフェデレーション - OpenID Summit 2015
Shibboleth IdP V3とアカデミックIDフェデレーション - OpenID Summit 2015
 
MySQLのソース・ターゲットエンドポイントとしての利用
MySQLのソース・ターゲットエンドポイントとしての利用MySQLのソース・ターゲットエンドポイントとしての利用
MySQLのソース・ターゲットエンドポイントとしての利用
 
KubeVirt 201 How to Using the GPU
KubeVirt 201 How to Using the GPUKubeVirt 201 How to Using the GPU
KubeVirt 201 How to Using the GPU
 
Cetoacidose Diabetica 2
Cetoacidose Diabetica 2Cetoacidose Diabetica 2
Cetoacidose Diabetica 2
 
MySQLとPostgreSQLの基本的なパラメータ比較
MySQLとPostgreSQLの基本的なパラメータ比較MySQLとPostgreSQLの基本的なパラメータ比較
MySQLとPostgreSQLの基本的なパラメータ比較
 
Cálculo do custo das mercadorias vendidas (cmv)
Cálculo do custo das mercadorias vendidas (cmv)Cálculo do custo das mercadorias vendidas (cmv)
Cálculo do custo das mercadorias vendidas (cmv)
 
系統程式 -- 第 11 章 嵌入式系統
系統程式 -- 第 11 章 嵌入式系統系統程式 -- 第 11 章 嵌入式系統
系統程式 -- 第 11 章 嵌入式系統
 
Office 365 管理者が押さえておきたい PowerShell コマンド
Office 365 管理者が押さえておきたい PowerShell コマンドOffice 365 管理者が押さえておきたい PowerShell コマンド
Office 365 管理者が押さえておきたい PowerShell コマンド
 
Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方
Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方
Chef, Ansible, Consul, … 自働化ツールとその組み合わせ方
 
MySQLの全文検索に関するあれやこれや
MySQLの全文検索に関するあれやこれやMySQLの全文検索に関するあれやこれや
MySQLの全文検索に関するあれやこれや
 
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
 
Exercícios Resolvidos: Integração por substituição trigonométrica
Exercícios Resolvidos: Integração por substituição trigonométricaExercícios Resolvidos: Integração por substituição trigonométrica
Exercícios Resolvidos: Integração por substituição trigonométrica
 
Veri Tabanı
Veri TabanıVeri Tabanı
Veri Tabanı
 
Diabetes mellitus
Diabetes mellitusDiabetes mellitus
Diabetes mellitus
 
第9回Jenkins勉強会 超簡単Pipeline講座
第9回Jenkins勉強会 超簡単Pipeline講座第9回Jenkins勉強会 超簡単Pipeline講座
第9回Jenkins勉強会 超簡単Pipeline講座
 
Formulário DRE Mod Industrial V 3
Formulário DRE Mod   Industrial V 3Formulário DRE Mod   Industrial V 3
Formulário DRE Mod Industrial V 3
 
バッチ処理にバインド変数はもうやめません? ~|バッチ処理の突発遅延を題材にして考えてみる~
バッチ処理にバインド変数はもうやめません? ~|バッチ処理の突発遅延を題材にして考えてみる~バッチ処理にバインド変数はもうやめません? ~|バッチ処理の突発遅延を題材にして考えてみる~
バッチ処理にバインド変数はもうやめません? ~|バッチ処理の突発遅延を題材にして考えてみる~
 
使ってみませんか?pg_hint_plan
使ってみませんか?pg_hint_plan使ってみませんか?pg_hint_plan
使ってみませんか?pg_hint_plan
 
まだ統計固定で消耗してるの? - Bind Peek をもっと使おうぜ! 2015 Edition -
まだ統計固定で消耗してるの? - Bind Peek をもっと使おうぜ! 2015 Edition -まだ統計固定で消耗してるの? - Bind Peek をもっと使おうぜ! 2015 Edition -
まだ統計固定で消耗してるの? - Bind Peek をもっと使おうぜ! 2015 Edition -
 
Vacuum徹底解説
Vacuum徹底解説Vacuum徹底解説
Vacuum徹底解説
 

Destaque

Java fx勉強会lt 第8回
Java fx勉強会lt 第8回Java fx勉強会lt 第8回
Java fx勉強会lt 第8回
Taiji Miyabe
 
BlueZで遊んでみる - BLE大阪勉強会
BlueZで遊んでみる - BLE大阪勉強会BlueZで遊んでみる - BLE大阪勉強会
BlueZで遊んでみる - BLE大阪勉強会
Shinji Kobayashi
 

Destaque (20)

iBeaconの基本のキ
iBeaconの基本のキiBeaconの基本のキ
iBeaconの基本のキ
 
I beaconの可能性
I beaconの可能性I beaconの可能性
I beaconの可能性
 
GPUを用いたSSLリバースプロキシの実装についての論文を読んだ
GPUを用いたSSLリバースプロキシの実装についての論文を読んだGPUを用いたSSLリバースプロキシの実装についての論文を読んだ
GPUを用いたSSLリバースプロキシの実装についての論文を読んだ
 
見よう見まねでJavaFX!
見よう見まねでJavaFX!見よう見まねでJavaFX!
見よう見まねでJavaFX!
 
JavaFX 8 に関する 7 つのこと
JavaFX 8 に関する 7 つのことJavaFX 8 に関する 7 つのこと
JavaFX 8 に関する 7 つのこと
 
イチからはじめるUSB Host API
イチからはじめるUSB Host APIイチからはじめるUSB Host API
イチからはじめるUSB Host API
 
JavaFX 8って何だ!! - JavaFX最新情報 -
JavaFX 8って何だ!! - JavaFX最新情報 -JavaFX 8って何だ!! - JavaFX最新情報 -
JavaFX 8って何だ!! - JavaFX最新情報 -
 
にゃんぼについて
にゃんぼについてにゃんぼについて
にゃんぼについて
 
Glibc malloc internal
Glibc malloc internalGlibc malloc internal
Glibc malloc internal
 
Java fx勉強会lt 第8回
Java fx勉強会lt 第8回Java fx勉強会lt 第8回
Java fx勉強会lt 第8回
 
iBeacon, BLE and The Future of Engagement: Dsrupted Conference
iBeacon, BLE and The Future of Engagement: Dsrupted ConferenceiBeacon, BLE and The Future of Engagement: Dsrupted Conference
iBeacon, BLE and The Future of Engagement: Dsrupted Conference
 
iBeacon Redefining Engagements
iBeacon Redefining EngagementsiBeacon Redefining Engagements
iBeacon Redefining Engagements
 
iBeacons proof of concept presentation for Royal botanical Gardens, Kew
iBeacons proof of concept presentation for Royal botanical Gardens, KewiBeacons proof of concept presentation for Royal botanical Gardens, Kew
iBeacons proof of concept presentation for Royal botanical Gardens, Kew
 
FileMaker Go で iBeacon やってみる
FileMaker Go で iBeacon やってみるFileMaker Go で iBeacon やってみる
FileMaker Go で iBeacon やってみる
 
iOSアプリ開発者のための Bluetooth Low Energy体験講座
iOSアプリ開発者のための Bluetooth Low Energy体験講座iOSアプリ開発者のための Bluetooth Low Energy体験講座
iOSアプリ開発者のための Bluetooth Low Energy体験講座
 
Intro to iBeacon and Bluetooth Low Energy
Intro to iBeacon and Bluetooth Low EnergyIntro to iBeacon and Bluetooth Low Energy
Intro to iBeacon and Bluetooth Low Energy
 
How iBeacon Could Disrupt Consumer Experiences
How iBeacon Could Disrupt Consumer ExperiencesHow iBeacon Could Disrupt Consumer Experiences
How iBeacon Could Disrupt Consumer Experiences
 
BlueZで遊んでみる - BLE大阪勉強会
BlueZで遊んでみる - BLE大阪勉強会BlueZで遊んでみる - BLE大阪勉強会
BlueZで遊んでみる - BLE大阪勉強会
 
iOS7アプリ同士の近距離通信どれがいい?
iOS7アプリ同士の近距離通信どれがいい?iOS7アプリ同士の近距離通信どれがいい?
iOS7アプリ同士の近距離通信どれがいい?
 
Bluetoothl-Low-Energy入門講座-part1
Bluetoothl-Low-Energy入門講座-part1Bluetoothl-Low-Energy入門講座-part1
Bluetoothl-Low-Energy入門講座-part1
 

Semelhante a iBeaconを使ってみよう!気軽に使える近距離無線通信

iTamabi 13 第9回:ARTSAT API 実践 3 ジオコーディングで衛星の位置を取得
iTamabi 13 第9回:ARTSAT API 実践 3 ジオコーディングで衛星の位置を取得iTamabi 13 第9回:ARTSAT API 実践 3 ジオコーディングで衛星の位置を取得
iTamabi 13 第9回:ARTSAT API 実践 3 ジオコーディングで衛星の位置を取得
Atsushi Tadokoro
 
『Androidアプリ「おもてナビ」の開発にみるARとGPSの活用ポイント』カサレアル石川氏
『Androidアプリ「おもてナビ」の開発にみるARとGPSの活用ポイント』カサレアル石川氏『Androidアプリ「おもてナビ」の開発にみるARとGPSの活用ポイント』カサレアル石川氏
『Androidアプリ「おもてナビ」の開発にみるARとGPSの活用ポイント』カサレアル石川氏
Developers Summit
 
Webアプリケーション開発での位置情報活用
Webアプリケーション開発での位置情報活用Webアプリケーション開発での位置情報活用
Webアプリケーション開発での位置情報活用
Masakazu Muraoka
 

Semelhante a iBeaconを使ってみよう!気軽に使える近距離無線通信 (20)

【ヒカ☆ラボ】あなたのMacがあっという間にBeacon端末に変身!~2015年必ずクル「iBeacon」を1から10まで~
【ヒカ☆ラボ】あなたのMacがあっという間にBeacon端末に変身!~2015年必ずクル「iBeacon」を1から10まで~【ヒカ☆ラボ】あなたのMacがあっという間にBeacon端末に変身!~2015年必ずクル「iBeacon」を1から10まで~
【ヒカ☆ラボ】あなたのMacがあっという間にBeacon端末に変身!~2015年必ずクル「iBeacon」を1から10まで~
 
iBeaconを身近に!アプリ開発の基礎とポイント
iBeaconを身近に!アプリ開発の基礎とポイントiBeaconを身近に!アプリ開発の基礎とポイント
iBeaconを身近に!アプリ開発の基礎とポイント
 
iOS ジオフェンシングで簡単リアル連動
iOS ジオフェンシングで簡単リアル連動iOS ジオフェンシングで簡単リアル連動
iOS ジオフェンシングで簡単リアル連動
 
Green Hack CoronaHandsOn#2
Green Hack CoronaHandsOn#2Green Hack CoronaHandsOn#2
Green Hack CoronaHandsOn#2
 
iTamabi 13 第9回:ARTSAT API 実践 3 ジオコーディングで衛星の位置を取得
iTamabi 13 第9回:ARTSAT API 実践 3 ジオコーディングで衛星の位置を取得iTamabi 13 第9回:ARTSAT API 実践 3 ジオコーディングで衛星の位置を取得
iTamabi 13 第9回:ARTSAT API 実践 3 ジオコーディングで衛星の位置を取得
 
OpenWhisk introduction public
OpenWhisk introduction publicOpenWhisk introduction public
OpenWhisk introduction public
 
Corona Handson #0
Corona Handson #0Corona Handson #0
Corona Handson #0
 
Yolp30分クッキング 2012北海道
Yolp30分クッキング 2012北海道Yolp30分クッキング 2012北海道
Yolp30分クッキング 2012北海道
 
『Androidアプリ「おもてナビ」の開発にみるARとGPSの活用ポイント』カサレアル石川氏
『Androidアプリ「おもてナビ」の開発にみるARとGPSの活用ポイント』カサレアル石川氏『Androidアプリ「おもてナビ」の開発にみるARとGPSの活用ポイント』カサレアル石川氏
『Androidアプリ「おもてナビ」の開発にみるARとGPSの活用ポイント』カサレアル石川氏
 
iBeacon を利用したサービス開発のポイント
iBeacon を利用したサービス開発のポイントiBeacon を利用したサービス開発のポイント
iBeacon を利用したサービス開発のポイント
 
Ibeacon hack4aizu
Ibeacon hack4aizuIbeacon hack4aizu
Ibeacon hack4aizu
 
物理ベース時代のライトマップベイク奮闘記
物理ベース時代のライトマップベイク奮闘記物理ベース時代のライトマップベイク奮闘記
物理ベース時代のライトマップベイク奮闘記
 
CEDEC 2020 - 高品質かつ低負荷な3Dライブを実現するシェーダー開発 ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スク...
CEDEC 2020 - 高品質かつ低負荷な3Dライブを実現するシェーダー開発 ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スク...CEDEC 2020 - 高品質かつ低負荷な3Dライブを実現するシェーダー開発 ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スク...
CEDEC 2020 - 高品質かつ低負荷な3Dライブを実現するシェーダー開発 ~『ラブライブ!スクールアイドルフェスティバル ALL STARS』(スク...
 
iBeacon #yidev
iBeacon #yideviBeacon #yidev
iBeacon #yidev
 
スキスキIonic
スキスキIonicスキスキIonic
スキスキIonic
 
ReNCoN_v0.6
ReNCoN_v0.6ReNCoN_v0.6
ReNCoN_v0.6
 
Webアプリケーション開発での位置情報活用
Webアプリケーション開発での位置情報活用Webアプリケーション開発での位置情報活用
Webアプリケーション開発での位置情報活用
 
CVPR2019 読み会「Understanding the Limitations of CNN-based Absolute Camera Pose ...
CVPR2019 読み会「Understanding the Limitations of CNN-based Absolute Camera Pose ...CVPR2019 読み会「Understanding the Limitations of CNN-based Absolute Camera Pose ...
CVPR2019 読み会「Understanding the Limitations of CNN-based Absolute Camera Pose ...
 
Introduction for cocos2d
Introduction for cocos2dIntroduction for cocos2d
Introduction for cocos2d
 
SADAO TOKUYAMA の L.E.A.P カンファレンス な 話
SADAO TOKUYAMA の L.E.A.P カンファレンス な 話SADAO TOKUYAMA の L.E.A.P カンファレンス な 話
SADAO TOKUYAMA の L.E.A.P カンファレンス な 話
 

Mais de yuki0211s (6)

Xcode 7で始めるCI
Xcode 7で始めるCIXcode 7で始めるCI
Xcode 7で始めるCI
 
AWS Mobile Hub で構築するクラウドネイティブモバイルアーキテクチャ
AWS Mobile Hub で構築するクラウドネイティブモバイルアーキテクチャAWS Mobile Hub で構築するクラウドネイティブモバイルアーキテクチャ
AWS Mobile Hub で構築するクラウドネイティブモバイルアーキテクチャ
 
AWS Mobile SDK利用時のテスト手法
AWS Mobile SDK利用時のテスト手法AWS Mobile SDK利用時のテスト手法
AWS Mobile SDK利用時のテスト手法
 
Lambda × Mobileの可能性
Lambda × Mobileの可能性Lambda × Mobileの可能性
Lambda × Mobileの可能性
 
Swift本ができるまで
Swift本ができるまでSwift本ができるまで
Swift本ができるまで
 
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
Xcode 5のAsset Catalogにまつわる今すぐ使えるTips集
 

Último

Último (7)

LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 

iBeaconを使ってみよう!気軽に使える近距離無線通信