Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
iOSDC 2019 BLE
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
coe
September 01, 2019
Technology
3.4k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
iOSDC 2019 BLE
iOSDC 2019 BLE and L2CAP
coe
September 01, 2019
More Decks by coe
See All by coe
すべてのヘルスケアデータを紐解く.pdf
coe
0
3.5k
About HealthKit nutrition
coe
0
500
Kotlin Dynamic type
coe
0
430
iOSDC 2023 Web in tvOS and watchOS
coe
1
1.1k
iOSDC 2023 Push To Talk
coe
1
2.8k
iOSDC手で触れずにアプリを動かす技術
coe
1
2.4k
iOSDC令和時代のXML処理を考える
coe
3
3.3k
iOSDC 2021 Restore
coe
6
2.4k
詳解Storyboard
coe
7
4.2k
Other Decks in Technology
See All in Technology
synctest時代のhttptest Go 1.27で変わるHTTPサーバテストの裏側 / go conference2026 synctest and httptest
budougumi0617
1
3k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
3
500
あるけみー式LTスライド作成術
alchemy1115
1
210
What the customer really needed
kawaguti
PRO
2
170
バイブコーディング時代のWebアプリ開発入門~Cloud Runで学ぶセキュアなビルドとデプロイ
waiwai2111
1
120
絵ではじめるKubernetesセキュリティ
aoi1
3
570
Minecraft JavaのMODをSwiftで作る
1mash0
0
160
俺の仕事は AIに奪われないし、たぶんその BIも要らない
hikaruri
0
470
LTのテーマ どうきめてる?〜5つの型と私のやり方〜
yama3133
1
100
Spring BootからQuarkusへの移行
tatsuya1bm
2
120
DEFCON34-Write-up_HYCu-MYCu
daikiokazaki
0
160
Amazon Quick on DesktopがIAM Identity Centerで動かない理由
yukiogawa
0
190
Featured
See All Featured
Deep Space Network (abreviated)
tonyrice
0
310
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Marketing to machines
jonoalderson
1
5.8k
Site-Speed That Sticks
csswizardry
13
1.5k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
300
Everyday Curiosity
cassininazir
0
320
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
How to Talk to Developers About Accessibility
jct
2
550
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
460
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
280
Transcript
#-&ͰJ04"OESPJEؒͰ ͦͦ͜͜େ͖ͳαΠζͷσʔλ௨ ৴Λ࣮ݱ͢Δ -$"1͋ΔΑ J04%$ڧ
ࣗݾհ w ڧʢ5TVZPTIJ)ZVHBʣ w גࣜձࣾ"NB[JB w !DP⒎FFHZVOZV w IUUQTHJUIVCDPNDPF w
J1IPOF04ʙ w "OESPJE%POVUʙ w 5JUBOJVN.PCJMF w UW04ʙ
rIUUQXXXBQQCBOLOFUJQIPOFBQQMJDBUJPO QIQ
rिץϓϨΠϘʔΠ݄߸
None
None
ΞδΣϯμ
ΞδΣϯμ w ͡Ίʹ w-$"1ʹΑΔ௨৴ w #-&Ͱͷ௨৴ w ͓͔͍͠ͳɺͱࢥͬͨΒ
͡Ίʹ
͡Ίʹ
͡Ίʹ ϖʔδ
ಡΜͩ͜ͱͳ͍ਓͰσʔλ ަͰ͖ΔΑ͏ʹͳΓ·͢ σʔλަ͔͠͠·ͤΜ
͡Ίʹ
1FSJQIFSBM $FOUSBM ͡Ίʹ ೋͭͷϩʔϧʹΘ͔ΕΔ
1FSJQIFSBM $FOUSBM 1FSJQIFSBM ΞυόλΠζʢࠂʣύέοτΛൃ৴ͯࣗ͠Λݟ ͚ͭͯΒ͏
1FSJQIFSBM $FOUSBM $FOUSBM ΞυόλΠζΛεΩϟϯͯ͠ɺతͷ1FSJQIFSBMΛ ୳͢
1FSJQIFSBM $FOUSBM $FOUSBM͕1FSJQIFSBMΛൃݟͰ͖ͨΒɺଓΛߦ ͍ɺσʔλ௨৴ͷ४උΛߦ͏ ίωΫγϣϯͷཱ֬
1FSJQIFSBM $FOUSBM ίωΫγϣϯͷཱ֬ ଓͨ͠Βɺσʔλ௨৴Ͱ͖ΔΑ͏ʹͳΔ
ͨͩ͠
$FOUSBM $FOUSBM ҙ ϋʔυΣΞͷதʹɺ1FSJQIFSBMʹͳΕͳ͍ ଘࡏ͢Δ
$FOUSBM $FOUSBM ҙ ϋʔυΣΞͷதʹɺ1FSJQIFSBMʹͳΕͳ͍ ଘࡏ͢Δ
1FSJQIFSBMʹͳΕͳ͍ w "QQMF57 w "QQMF8BUDI w /FYVT w FUDʜ
ࠓճͷൣғ
ࠓճͷൣғ w $FOUSBM㱻1FSJQIFSBMͷଓํ๏ʹׂ͍ͭͯѪ͠·͢ w $FOUSBM㱻1FSJQIFSBMؒͷ࠷దͳσʔλަʹ͍ͭͯઆ ໌͠·͢
-$"1
rIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPODPSFCMVFUPPUI DCQFSJQIFSBMNBOBHFSQVCMJTIMDBQDIBOOFM
-$"1ʹ͍ͭͯ w -$"1ɺ-PHJDBM-JOL$POUSPMBOE"EBQUBUJPO 1SPUPDPMͷলུͰʙ
-$"1ʹ͍ͭͯ w -$"1ɺ-PHJDBM-JOL$POUSPMBOE"EBQUBUJPO 1SPUPDPMͷলུͰʙ w ຊηογϣϯͰɺಉ࢜Λଓͯ͠ɺํͰσʔλ ૹड৴ΛμΠϨΫτʹѻ͏ํ๏ʹ͍ͭͯઆ໌͠·͢
-$"1ʹΑΔํ௨৴
-$"1ʹΑΔํ௨৴ ͓ޓ͍͕ɺ$FOUSBMɺ1FSJQIFSBMͷ͚۠ͳ͘ɺ *OQVU0VUQVUՄೳͳετϦʔϜΛ࣋ͪσʔλૹड৴Λߦ͑Δ
-$"1ʹΑΔํ௨৴ J04 "OESPJE iOS11Ҏ্ Android 10
ϝϦοτ
ϝϦοτ w #-&ͷ༷ΛʢͦΜͳʹʣΒͳ͍͍ͯ͘ w ଓ͠ऴΘͬͨΒɺσʔλ௨৴෦4USFBNͳϓϩά ϥϛϯά w ϦΞϧλΠϜͳΓͱΓΓ͍͢ w ߴ
-$"1ʹΑΔ ํ௨৴ͷखॱ
1FSJQIFSBM $FOUSBM -$"1ʹΑΔํ௨৴ ैདྷ௨Γಉ࢜Λଓ͢Δඞཁ͕͋Δ
1FSJQIFSBM $FOUSBM -$"1ʹΑΔํ௨৴ -$"1௨৴༻ͷ$IBOOFMΛ༻ҙ͢Δ
1FSJQIFSBM $FOUSBM -$"1ʹΑΔํ௨৴ 14.ͱ͍͏൪߸͕͍ग़͞ΕΔ
1FSJQIFSBM $FOUSBM -$"1ʹΑΔํ௨৴ 1FSJQIFSBMଆͰ͍ग़͞Ε͍ͯΔ14.Λࢦఆ͠ɺ -$"1$IBOOFMͷΦʔϓϯΛߦ͏
1FSJQIFSBM $FOUSBM -$"1ʹΑΔํ௨৴ -$"1$IBOOFM͕Φʔϓϯ͞Εͨ͜ͱΛ͓ޓ͍ݕ͢Δ
1FSJQIFSBM $FOUSBM -$"1ʹΑΔํ௨৴ ํ௨৴
ͦΕͧΕ 04ຖʹݟ͍ͯ͘
-$"1ʹΑΔํ௨৴ J04 "OESPJE -$"1௨৴༻ͷ $IBOOFMΛ༻ҙ͢Δ CBPeripheralManager#publis hL2CAPChannel(withEncrypti on:) BluetoothAdapter#listenUsin gL2capChannel()
14.ͱ͍͏൪߸͕͍ग़ ͞ΕΔ CBPeripheralManagerDelegat e#peripheralManager(_:didPu blishL2CAPChannel:error:) BluetoothServerSocket# getPsm() 1FSJQIFSBMଆͰ͍ग़͞Ε͍ͯΔ 14.Λࢦఆ͠ɺ -$"1$IBOOFMͷΦʔϓϯΛߦ͏ CBPeripheral#openL2CAPChannel(_:) BluetoothDevice# createL2capChannel(psm) BluetoothSocket#connect() -$"1$IBOOFM͕Φʔϓ ϯ͞Εͨ͜ͱΛ͓ޓ͍ݕ͢Δ CBPeripheralDelegate#peripheral(_:did Open:error:) CBPeripheralManagerDelegate.periphe ralManager(_:didOpen:error:) BluetoothServerSocket#acc ept() ํ௨৴ ޙड़ ޙड़
-$"1ʹΑΔํ௨৴ -$"1௨৴༻ͷ$IBOOFMΛ༻ҙ͢Δ ˠJ04$#1FSJQIFSBM.BOBHFSQVCMJTI-$"1$IBOOFM XJUI&ODSZQUJPO Λίʔϧ͢Δ
-$"1ʹΑΔํ௨৴ -$"1௨৴༻ͷ$IBOOFMΛ༻ҙ͢Δ ˠ"OESPJE#MVFUPPUI"EBQUFSMJTUFO6TJOH-DBQ$IBOOFM Λίʔϧ͢Δɻ ฦΓͷ#MVFUPPUI4FSWFS4PDLFU͜ͷޙ͍·͢ɻ
-$"1ʹΑΔํ௨৴ 14.ͱ͍͏൪߸͕͍ग़͞ΕΔ ˠJ04 $#1FSJQIFSBM.BOBHFS%FMFHBUFQFSJQIFSBM.BOBHFS @EJE1VCMJTI-$"1$IBOOFMFSSPS ΑΓɺ$#-$"114. 6*OU ͕औಘͰ͖Δ
-$"1ʹΑΔํ௨৴ 14.ͱ͍͏൪߸͕͍ग़͞ΕΔ ˠ"OESPJE#MVFUPPUI"EBQUFSMJTUFO6TJOH-DBQ$IBOOFM Ͱฦ͖ͬͯͨ#MVFUPPUI4FSWFS4PDLFU͔Β HFU1TN Ͱऔಘ͢Δ
-$"1ʹΑΔํ௨৴ 1FSJQIFSBMଆͰ͍ग़͞Ε͍ͯΔ14.Λࢦఆ͠ɺ -$"1$IBOOFMͷΦʔϓϯΛߦ͏ ˠJ04$#1FSJQIFSBMPQFO-$"1$IBOOFM @ Λίʔϧ͢Δ
-$"1ʹΑΔํ௨৴ 1FSJQIFSBMଆͰ͍ग़͞Ε͍ͯΔ14.Λࢦఆ͠ɺ -$"1$IBOOFMͷΦʔϓϯΛߦ͏ ˠ"OESPJE#MVFUPPUI%FWJDFDSFBUF-DBQ$IBOOFM QTN Ͱ #MVFUPPUI4PDLFUऔಘޙɺ #MVFUPPUI4PDLFUDPOOFDU ͰଓΛߦ͏
-$"1ʹΑΔํ௨৴ -$"1$IBOOFM͕Φʔϓϯ͞Εͨ͜ͱΛݕ͢Δ ˠJ04ɺ DFOUSBM$#1FSJQIFSBM%FMFHBUFQFSJQIFSBM @EJE0QFOFSSPS QFSJQIFSBM$#1FSJQIFSBM.BOBHFS%FMFHBUFQFSJQIFSBM.BOBHFS @EJE0QFOFSSPS ͰݕՄೳ
-$"1ʹΑΔํ௨৴ -$"1$IBOOFM͕Φʔϓϯ͞Εͨ͜ͱΛݕ͢Δ ˠ"OESPJEɺ QFSJQIFSBM#MVFUPPUI4FSWFS4PDLFUBDDFQU Λ࣮ߦ͢Δ͜ͱͰPQFOΛͪड͚Δ͜ͱ͕Մೳ 6*εϨουͷϒϩοΫʹҙ DFOUSBMಛʹ͢Δ͜ͱͳ͠
-$"1ʹΑΔํ௨৴ ํ௨৴
ํ௨৴ w *OQVU4USFBNɺ0VU1VU4USFBNʹΑͬͯσʔλૹड৴Λߦ ͏ w J04ɺऔಘͨ͠$#-$"1$IBOOFM͔Βɺ*OQVU4USFBNͱ 0VU1VU4USFBNΛऔಘՄೳ w "OESPJEɺ#MVFUPPUI4PDLFU#MVFUPPUI4FSWFS4PDLFU ͔Β*OQVU4USFBNͱ0VU1VU4USFBNΛऔಘՄೳ
w ͋ͱɺ௨ৗ௨Γͷ*OQVU4USFBN0VU1VU4USFBNͰͷ௨৴ Λߦ͏
࣮ࡍͲͷ͘Β͍ૹΕΔ ͷʁ
#-&ʹΑΔ௨৴
#-&ʹΑΔ௨৴ όΠτ
J1IPOF94.BY 1JYFMB -$"1ʹΑΔํ௨৴
J1IPOF94.BY 1JYFMB -$"1ʹΑΔํ௨৴ CZUF
None
#-&Ͱͷ௨৴
#-&Ͱͷ௨৴ w ͭͷ௨৴ύλʔϯͰखଓ͖͕ҟͳΔ w $FOUSBMˠ1FSJQIFSBM w 1FSJQIFSBMˠ$FOUSBM w ҰʹૹΕΔσʔλྔ͕গͳ͍ͷͰɺେ͖͍σʔλΛૹΓ ͍ͨ߹ɺͳΔ͘େ͖ͳαΠζͰׂͯ͠ෳճૹ৴͢
Δ͜ͱʹΑͬͯσʔλ௨৴ͷߴԽΛߦ͏
1FSJQIFSBM $FOUSBM $FOUSBMˠ1FSJQIFSBM
$IBSBDUFSJTUJD
$FOUSBMˠ1FSJQIFSBM $IBSBDUFSJTUJD ໊લ छผ ׂ 1 σʔλॻ͖ࠐΈ Write with response
ૹ৴͢Δσʔλͦͷͷ 2 σʔλॻ͖ࠐΈόΠτ௨ొ Notify Central͔ΒPeripheralʹॻ ͖ࠐ·ΕͨRaw DataαΠ ζΛ௨
ٙ
όΠτ·Ͱ͔͠ ૹΕͳ͍ΜͰ͠ΐʁ
࣮ࡍʹૹͬͯΈΔ
$FOUSBMJ1IPOF1MVT 1FSJQIFSBM1JYFMB
1JYFMB J1IPOF1MVT $FOUSBMˠ1FSJQIFSBM
1JYFMB J1IPOF1MVT $FOUSBMˠ1FSJQIFSBM ௐࠪͷ݁Ռɺ J1IPOF1MVT͔Β1JYFMBʹૹͬͨ߹ɺ CZUFૹΔ͜ͱ͕Ͱ͖Δ σʔλॻ͖ࠐΈ
$FOUSBM1JYFMB 1FSJQIFSBMJ1IPOF1MVT
1JYFMB J1IPOF1MVT $FOUSBMˠ1FSJQIFSBM 1JYFMB͔ΒJ1IPOF1MVTʹૹͬͨ߹ɺ CZUF͔͠ૹΔ͜ͱ͕Ͱ͖ͳ͔ͬͨ σʔλॻ͖ࠐΈ
σʔλॻ͖ࠐΈόΠτ 1FSJQIFSBM J1IPOF1MVT 1FSJQIFSBM 1JYFMB $FOUSBM J1IPOF1MVT - 180 $FOUSBM
1JYFMB 20 -
1FSJQIFSBM J1IPOF1MVT 1FSJQIFSBM 1JYFMB $FOUSBM J1IPOF1MVT - 180 $FOUSBM 1JYFMB
20 - "OESPJEɺJ04ʹൺɺഒ΄Ͳͷεϐʔυͷ͕ࠩ͋Δ σʔλॻ͖ࠐΈόΠτ
"OESPJEͷ#-& ͍͚ͯͳ͍ʁ
"OESPJEͷ#-& ͍͚ͯͳ͍ʁ
"OESPJEͷ#-& ͍͚ͯͳ͍ʁ "OESPJEී௨ͷ͜ͱΛ͍ͬͯΔ
J04ͷεϐʔυ͕͍ ͷཧ༝͕͋Δ
"OESPJE1FSJQIFSBMଆʹ ͱ͋ΔϝιουΛ࣮͢Δ
IUUQTEFWFMPQFSBOESPJEDPNSFGFSFODFBOESPJECMVFUPPUI #MVFUPPUI(BUU4FSWFS$BMMCBDLIUNMPO.UV$IBOHFE BOESPJECMVFUPPU I#MVFUPPUI%FWJDF JOU #MVFUPPUI(BUU4FSWFS$BMMCBDL PO.UV$IBOHFE
1JYFMB J1IPOF1MVT
1JYFMB J1IPOF1MVT ଓ
1JYFMB J1IPOF1MVT PO.UV$IBOHFE ଓ
&YDIBOHF.56
r#-6&5005)41&$*'*$"5*0/7FSTJPO 1&YDIBOHF.56
&YDIBOHF.56 w ΫϥΠΞϯτɺ௨ৗΑΓେ͖͍σʔλྔΛαϙʔτ ͍ͨ͠߹ɺ&YDIBOHF.56Λ༻͢Δ w αʔόଆ͜ΕΛड͚ͯɺड৴Ͱ͖Δ࠷େαΠζPSΤ ϥʔΛฦ͢ w ͜ΕʹΑΓɺόΠτΑΓେ͖ͳσʔλྔΛૹΔ͜ͱ ͕Մೳ
1JYFMB J1IPOF1MVT &YDIBOHF.56 J04ɺଓޙɺࣗಈͰ&YDIBOHF.56Λૹ͍ͬͯΔ ʢૹ৴Λڋ൱͢Δ͜ͱɺαΠζΛܾఆ͢Δ͜ͱͰ͖ͳ͍ʣ
1JYFMB J1IPOF1MVT &YDIBOHF.56 "OESPJEɺ&YDIBOHF.56ΛૹΒͳ͍ͨΊɺ όΠτ͔͠ૹΕͳ͍
"OESPJEͰ &YDIBOHF.56ΛૹΔ
rIUUQTEFWFMPQFSBOESPJEDPNSFGFSFODFBOESPJECMVFUPPUI #MVFUPPUI(BUUIUNMSFRVFTU.UV JOU #MVFUPPUI(BUU SFRVFTU.UV
1JYFMB J1IPOF1MVT #MVFUPPUI(BUUSFRVFTU.UV JOU #MVFUPPUI(BUUSFRVFTU.UVʹదͳΛઃఆ͢Δ͜ͱͰ J04ͱಉ༷ʹେ༰ྔͷσʔλΛૹΔ͜ͱ͕Ͱ͖Δ "OESPJEͰ&YDIBOHF.56ΛૹΔ
దͳʁ
దͳʁ "OESPJEͷ"1*Λௐͯऔಘํ๏͕͔Βͣɾɾɾ
దͳ w ࣮ࡍͷͰௐΔ w /FYVT w /FYVT1 w 1JYFMB
1JYFMB J1IPOF1MVT #MVFUPPUI(BUUSFRVFTU.UV "OESPJEͰ&YDIBOHF.56ΛૹΔ
1JYFMB J1IPOF1MVT #MVFUPPUI(BUUSFRVFTU.UV "OESPJEͰ&YDIBOHF.56ΛૹΔ #MVFUPPUI(BUU$BMMCBDL PO3FRVFTU.UV SFRVFTU.UVΛ࣮ߦ͢Δ͜ͱͰɺ&YDIBOHF.56Λૹ৴Ͱ͖ɺ &YDIBOHF.563FTQPOTFͰ.56
Λड͚औΕΔ
1JYFMB J1IPOF1MVT ॻ͖ࠐΉ ઌ΄Ͳಘͨ όΠτͰσʔλॻ͖ࠐΈ
1JYFMB J1IPOF1MVT ॻ͖ࠐΉ ઌ΄Ͳಘͨ όΠτͰσʔλॻ͖ࠐΈ
1JYFMB J1IPOF1MVT ॻ͖ࠐΉ όΠτͰσʔλॻ͖ࠐΈ #-6&5005)41&$*'*$"5*0/7FSTJPO 8SJUF$IBSBDUFSJTUJD7BMVF Ͱنఆ͞Ε͍ͯΔɺ .56 όΠτͰॻ͖ࠐΈΛߦ͏͜ͱͰɺਖ਼ৗʹॻ͖ࠐΈ͕ߦ͑Δ
$FOUSBMXSJUFCZUFT 1FSJQIFSBM J1IPOF1MVT 1FSJQIFSBM 1JYFMB $FOUSBM J1IPOF1MVT - 180 $FOUSBM
1JYFMB 514 -
·͍ͩͬͯΔ
σʔλॻ͖ࠐΈόΠτ 1FSJQIFSBM J1IPOF1MVT 1FSJQIFSBM 1JYFMB $FOUSBM J1IPOF1MVT - 180 $FOUSBM
1JYFMB 514 - ͜ͷࣈͲ͔͜Βʁ
J04$FOUSBMͷ࠷దͳ όΠτͷٻΊํ
J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ
J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ rIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPODPSFCMVFUPPUI DCQFSJQIFSBMNBYJNVNXSJUFWBMVFMFOHUI $#1FSJQIFSBMNBYJNVN8SJUF7BMVF-FOHUI GPS
NBYJNVN8SJUF7BMVF-FOHU I GPSXJUI3FTQPOTF ͰௐͯΈΔ
1JYFMB J1IPOF1MVT NBYJNVN8SJUF7BMVF-FOHUI GPSXJUI3FTQPOTF J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ
1JYFMB J1IPOF1MVT NBYJNVN8SJUF7BMVF-FOHUI GPSXJUI3FTQPOTF J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ Ͱ͢Α
1JYFMB J1IPOF1MVT όΠτͰॻ͖ࠐΉΑ J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ
1JYFMB J1IPOF1MVT όΠτͰॻ͖ࠐΉΑ J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ όΠτ
1JYFMB J1IPOF1MVT όΠτͰॻ͖ࠐΉΑ J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ όΠτ όΠτσʔλ͕ܽଛ͢Δ
1JYFMB J1IPOF94.BY όΠτͰॻ͖ࠐΉΑ J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ όΠτ J1IPOF94.BYͩͱσʔλܽଛى͖ͳ͍
$FOUSBMXSJUFCZUFT 1FSJQIFSBM J1IPOF 1FSJQIFSBM 1JYFMB 1FSJQIFSBM J1IPOF94.BY $FOUSBM J1IPOF -
180 180 $FOUSBM 1JYFMB 514 - 514 $FOUSBM J1IPOF94.BY 512 512 -
$FOUSBMXSJUFCZUFT 1FSJQIFSBM J1IPOF 1FSJQIFSBM 1JYFMB 1FSJQIFSBM J1IPOF94.BY $FOUSBM J1IPOF -
180 180 $FOUSBM 1JYFMB 514 - 514 $FOUSBM J1IPOF94.BY 512 512 - ಉҰ04Ͱ͋ͬͯɺʹΑͬͯૹ৴Ͱ͖ΔόΠτʹ͕ࠩग़Δ
rIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPODPSFCMVFUPPUI DCQFSJQIFSBMNBYJNVNXSJUFWBMVFMFOHUI ͜ͷ"1*ࠩΛߟྀͤͣɺ͕ฦͬͯ͘Δ
ͳͷͰ
1FSJQIFSBM $FOUSBM J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ όΠτॻ͖ࠐΈ·ͨ͠Α ࣮ࡍʹ౸ୡͨ͠σʔλΛ 1FSJQIFSBM͔Β$FOUSBMڭ͑ͯཉ͍͠
1FSJQIFSBM $FOUSBM J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ ࣮ࡍʹ౸ୡͨ͠σʔλΛڭ͑ΔΑ͏ ͋Β͔͡Ίొ͓ͯ͘͠ σʔλॻ͖ࠐΈόΠτ௨ొ
1JYFMB J1IPOF1MVT όΠτͰॻ͖ࠐΉΑ J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ όΠτ
1JYFMB J1IPOF1MVT όΠτͰॻ͖ࠐΉΑ J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ όΠτ όΠτॻ͖ࠐΈ·ͨ͠Α
1JYFMB J1IPOF1MVT όΠτͰॻ͖ࠐΉΑ J04$FOUSBMͷ࠷దͳόΠτ ͷٻΊํ όΠτ όΠτॻ͖ࠐΈ·ͨ͠Α ࣮ࡍʹ౸ୡͨ͠σʔλΛɺ /PUJGZͷܗͰ૬खʹ͑Δ
None
1FSJQIFSBM $FOUSBM 1FSJQIFSBMˠ$FOUSBM
1FSJQIFSBMˠ$FOUSBM $IBSBDUFSJTUJD ໊લ छผ ׂ 1 ಡΈऔΓϦΫΤετ Write with response
σʔλͷಡΈऔΓ։࢝ό ΠτҐஔΛࢦఆ͢Δ 2 ಡΈऔΓϨεϙϯε௨ొ Notify ಡΈऔΓϦΫΤετ͔Βɺ ૹΓ͍ͨσʔλΛΓऔͬ ͯ௨͢Δ
1FSJQIFSBM $FOUSBM 1FSJQIFSBMˠ$FOUSBM 1FSJQIFSBM͔Β$FOUSBMʹσʔλΛ௨͢ΔͨΊ ௨ొ ಡΈऔΓϨεϙϯε௨ొ
1FSJQIFSBM $FOUSBM 1FSJQIFSBMˠ$FOUSBM ಡΈऔΓϦΫΤετ $FOUSBMଆ͕ɺඞཁͳσʔλΛԿόΠτ͔Βཉ͠ ͍͔Λ͑Δ
1FSJQIFSBM $FOUSBM 1FSJQIFSBMˠ$FOUSBM 1SJQIFSBMଆɺ$FOUSBMଆͷσʔλ࠷େʹ߹Θ ͤͯσʔλΛฦͯ͋͛͠Δ OPUJGZ σʔλ࠷େ ಡΈऔΓϦΫΤετ
σʔλ࠷େͷٻΊํ
rIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPODPSFCMVFUPPUI DCDFOUSBMNBYJNVNVQEBUFWBMVFMFOHUI 1FSJQIFSBMˠ$FOUSBM J04͕1FSJQIFSBMͷ߹ɺσʔλ࠷େ $#$FOUSBMNBYJNVN6QEBUF7BMVF-FOHUI ͰௐΒΕΔ
rIUUQTEFWFMPQFSBQQMFDPNEPDVNFOUBUJPODPSFCMVFUPPUI DCDFOUSBMNBYJNVNVQEBUFWBMVFMFOHUI 1FSJQIFSBMˠ$FOUSBM "OESPJE͕1FSJQIFSBMͷ߹ɺσʔλ࠷େ #MVFUPPUI(BUU4FSWFS$BMMCBDLPO.UV$IBOHFE Ͱड͚औͬͨ.56͔Βͨ͠ʹͳΔ
1FSJQIFSBM $FOUSBM 1FSJQIFSBMˠ$FOUSBM ಡΈऔΓϦΫΤετ CZUF OPUJGZ $FOUSBMଆ͕σʔλΛԿόΠτ͔Βཉ͍͔͠ ͑Δ
ಡΈऔΓϦΫΤετ OPUJGZ σʔλ࠷େ
1FSJQIFSBM σʔλ࠷େCZUF 1FSJQIFSBMˠ$FOUSBM 1FSJQIFSBMɺෳͷʹଓ͞Ε͍ͯΔՄೳੑ͋ΔͨΊɺ ୭͔ΒXSJUFཁٻ͞Ε͔ͨɺʹΑͬͯσʔλ༰Λม͑Δ σʔλ࠷େCZUF OPUJGZ OPUJGZ
None
͓͔͍͠ͳɺͱࢥͬͨΒ
#-&ͷॲཧ͕ಈ͔ͳ͍ J04
#-&ͷॲཧ͕ಈ͔ͳ͍ J04 $#$FOUSBM $#1FSJQIFSBM $#-$"1$IBOOFM ͳͲ ඞͣΫϥεͷϓϩύςΟʹอ͓࣋ͯ͘͠ Α͘Θ͔Βͳ͍Τϥʔʹ·͞ΕΔ͜ͱʹͳΓ·͢
σʔλ͕ਖ਼͘͠ૹΕͳ͍
σʔλ͕ਖ਼͘͠ૹΕͳ͍
σʔλ͕ਖ਼͘͠ૹΕͳ͍
σʔλ͕ਖ਼͘͠ૹΕͳ͍ w όΠτΦʔμʔ -JUUMF&OEJBO #JH&OEJBO ʹ͕͋Γ·͢ w J04ଆ w όΠτΦʔμʔΛ֬ೝ͢Δ
#ZUF0SEFS6UJMJUJFT w $'#ZUF0SEFS(FU$VSSFOU w "OESPJEଆ w #ZUF#V⒎FSͷѻ͍ʹؾΛ͚ͭΔ w #ZUF#V⒎FSͷॳظόΠτΦʔμʔ#JHFOEJBOͰ͢ w #ZUF#V⒎FSPSEFS
͍͞͝ʹ w ͓͏ʂ-$"1 w ࠓճͷγʔέϯεΛΞϨϯδͯ͠ɺ৽ͨͳ#-&ΞϓϦΛ࡞ Ζ͏ʂ