Slide 1

Slide 1 text

BLUETOOTH_SCAN and iBeacon @MoyuruAizawa

Slide 2

Slide 2 text

Moyuru Aizawa Software Engineer, Catlog Div., RABO. Previously in CREW Div., Azit; CATS Div., CyberAgent; Pairs Div., Eureka. MoyuruAizawa

Slide 3

Slide 3 text

AndroidͰBluetoothσόΠεΛ εΩϟϯ͢ΔͨΊͷpermission͸?

Slide 4

Slide 4 text

Android 12Ҏ্ BLUETOOTH_SCAN Android 11ҎԼ ACCESS_FINE_LOCATION

Slide 5

Slide 5 text

Q. ͳͥBluetoothσόΠεͷεΩϟϯʹ ACCESS_FINE_LOCATION͕ඞཁͩͬͨ?

Slide 6

Slide 6 text

A. BluetoothσόΠεΛݕࡧ͢Δ͜ͱͰ ؒ઀తʹҐஔ৘ใΛऔಘͰ͖Δ͔ΒŇ

Slide 7

Slide 7 text

Google ňAndroid 12 Ͱ͸ɺBLUETOOTH_SCAN, BLUETOOTH_ADVERTISE, BLUETOOTH_CONNECTݖݶ͕ಋೖ͞Ε·ͨ͠ɻ͜ͷݖݶʹΑΓɺAndroid 12 Λλʔήοτͱ͢ΔΞϓϦɺಛʹσόΠεͷҐஔ৘ใ΁ͷΞΫηεΛඞཁ ͱ͠ͳ͍ΞϓϦͰɺBluetooth σόΠεͷૢ࡞͕༰қʹͳΓ·͢ɻʼn

Slide 8

Slide 8 text

ACCESS_FINE_LOCATIONແ͠Ͱ BluetoothσόΠεͷεΩϟϯ͕Ͱ͖ΔΑ͏ ʹͳͬͨ🎉

Slide 9

Slide 9 text

Slide 10

Slide 10 text

͜ΕͰ͍͍ͩͨͷσόΠε͸ εΩϟϯͰ͖Δ

Slide 11

Slide 11 text

Ұ෦ͷσόΠε͸ εΩϟϯग़དྷͳ͍

Slide 12

Slide 12 text

ؒ઀తʹҐஔ৘ใΛऔಘͰ͖Δ σόΠε͸εΩϟϯର৅֎ͱͳΔ

Slide 13

Slide 13 text

۩ମతʹ͸?

Slide 14

Slide 14 text

iBeacon͸εΩϟϯͰ͖ͳ͍ ※ͨͿΜEddystone΋

Slide 15

Slide 15 text

Q.iBeaconͬͯԿ?

Slide 16

Slide 16 text

A. Apple͕࢓༷ࡦఆͨ͠ϏʔίϯσόΠεŇ BluetoothͷΞυόλΠζύέοτ͕ iBeaconͷ࢓༷ʹ४ڌ͍ͯ͠ΔσόΠεŇ Eddystone͸Google͕ܾΊͨ࢓༷ͷϏʔίϯσόΠε ͋·Γ͔ͭΘΕ͍ͯͳ͍

Slide 17

Slide 17 text

͜Μͳײ͡ͰBluetoothσόΠε͸ ࣗ਎͕Ͳ͏͍͏σόΠεͳͷ͔ൃ৴͍ͯ͠Δ 1AFF4C0002 7BEC01006BF04E64A0094D17999F3BEE200000D5C3 020106 15

Slide 18

Slide 18 text

iBeaconͷ࢓༷ʹԊͬͨύέοτ ͜͏͍͏ύέοτؚ͕·ΕΔͱ ݕग़Ͱ͖ͳ͍ 1AFF4C0002 7BEC01006BF04E64A0094D17999F3BEE200000D5C3 15

Slide 19

Slide 19 text

1A FF 4C0002 7BEC01006BF04E64A0094D17999F3BEE200000D5C3 σʔλ௕ σʔλλΠϓ (0xFF == Manufacturer Data) Manufacturer Data 15

Slide 20

Slide 20 text

1A FF 4C00 02 7BEC01006BF04E64A0094D17999F3BEE 2000 00D5 C3 σʔλ௕ σʔλλΠϓ (0xFF == Manufacturer Data) Manufacturer Data Manufacturer ID (0x4C00 == Apple, Inc.) Beacon Type Proximity UUID (Ϗʔίϯͷݸମ/छผΛಛఆ͢ΔUUID) Major (Ϗʔίϯͷݸମ/छผΛಛఆ͢ΔID) Minor (Ϗʔίϯͷݸମ/छผΛಛఆ͢ΔID) TxPower (ి೾ग़ྗڧ౓) 15 σʔλ௕

Slide 21

Slide 21 text

1A FF 4C00 02 7BEC01006BF04E64A0094D17999F3BEE 2000 00D5 C3 σʔλ௕ σʔλλΠϓ (0xFF == Manufacturer Data) Manufacturer Data Manufacturer ID (0x4C00 == Apple, Inc.) Beacon Type Proximity UUID (Ϗʔίϯͷݸମ/छผΛಛఆ͢ΔUUID) Major (Ϗʔίϯͷݸମ/छผΛಛఆ͢ΔID) Minor (Ϗʔίϯͷݸମ/छผΛಛఆ͢ΔID) TxPower (ి೾ग़ྗڧ౓) 15 σʔλ௕

Slide 22

Slide 22 text

1A FF 4C00 02 7BEC01006BF04E64A0094D17999F3BEE 2000 00D5 C3 σʔλ௕ σʔλλΠϓ (0xFF == Manufacturer Data) Manufacturer Data Manufacturer ID (0x4C00 == Apple, Inc.) Beacon Type Proximity UUID (Ϗʔίϯͷݸମ/छผΛಛఆ͢ΔUUID) Major (Ϗʔίϯͷݸମ/छผΛಛఆ͢ΔID) Minor (Ϗʔίϯͷݸମ/छผΛಛఆ͢ΔID) TxPower (ి೾ग़ྗڧ౓) 15 σʔλ௕

Slide 23

Slide 23 text

Q.Ͳ͏΍ͬͨΒiBeacon΋ εΩϟϯͰ͖Δͷ?

Slide 24

Slide 24 text

A. ACCESS_FINE_LOCATION΋ औಘ͢Ε͹OK

Slide 25

Slide 25 text

·ͱΊ

Slide 26

Slide 26 text

Android 12Ҏ্ & Ϗʔίϯ͸ର৅֎ BLUETOOTH_SCAN(neverForLocation) Android 12Ҏ্ & Ϗʔίϯ΋ର৅ BLUETOOTH_SCAN + ACCESS_FINE_LOCATION Android 11ҎԼ ACCESS_FINE_LOCATION

Slide 27

Slide 27 text

͜Εʹؾ͕෇͔ͳͯ͘ 10࣌ؒ͘Β͍࿘අͨ͠Ň

Slide 28

Slide 28 text

Thank you