Slide 1

Slide 1 text

BluetoothDevice.getName()ʹ ཪ੾ΒΕͨ࿩ @MoyuruAizawa

Slide 2

Slide 2 text

Moyuru Aizawa Software Engineer of Catlog, RABO. Previously at Azit, CyberAgent, and Eureka. Love Metal, Hardcore and EDM. MoyuruAizawa

Slide 3

Slide 3 text

ಛʹΦνͷͳ͍࿩Λ͠·͢

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

͜ΕΒͷϋʔυ΢ΣΞͷηοτΞοϓ͸ Android͔ΒBluetoothܦ༝Ͱߦͬͯ·͢

Slide 6

Slide 6 text

ϋʔυ΢ΣΞͱ͸ BluetoothDevice/BluetoothGatt ͱ͍͏APIΛ௨ͯ͡௨৴͠·͢

Slide 7

Slide 7 text

BluetoothDevice.getName()Ͱ ϋʔυ΢ΣΞͷnameΛऔಘͰ͖·͢

Slide 8

Slide 8 text

AndroidͷBluetoothLeScannerΛ ͔ͭͬͯपғͷσόΠεΛݕࡧ͢Ε͹ Θ͔Γ·͕͢

Slide 9

Slide 9 text

Catlog੡ͷϋʔυ΢ΣΞʹ͸͢΂ͯ ݸମݻ༗ͷname͕ઃఆ͞Ε͍ͯ·͢

Slide 10

Slide 10 text

BluetoothDevice.getName()ͷ ฦΓ஋͸nullableͷStringͰ͕͢

Slide 11

Slide 11 text

Catlogͷϋʔυ΢ΣΞ૬खͳΒ ඞͣString͕ฦͬͯ͘Δ͜ͱ͕ ظ଴͞Ε·͢

Slide 12

Slide 12 text

No content

Slide 13

Slide 13 text

14 betaΛೖΕͯࢼͨ݁͠Ռ BluetoothDevice.getName()ͷڍಈ͕ ͓͔͍͜͠ͱ͕൑໌

Slide 14

Slide 14 text

Catlog HomeͷWi-FiઃఆͷͨΊʹ
 पғͷCatlog HomeΛscan
 
 ͜ͷ࣌఺Ͱ͸Catlog Homeͷname͕औಘͰ͖͍ͯΔ

Slide 15

Slide 15 text

ઃఆϑϩʔΛਐΊͯߦͬͯ ͜ͷը໘Ͱprimary buttonΛԡ͢ͱ ΋͏Ұ౓BluetoothDevice.getName()Λ͠·͢

Slide 16

Slide 16 text

͵ΔΆ

Slide 17

Slide 17 text

લͷը໘Ͱ͸name͕ظ଴௨Γʹฦͬ ͖͍͕ͯͯͨŊͳ͔ͥnull͕ฦͬͯ͘Δ

Slide 18

Slide 18 text

ͳͥ…?

Slide 19

Slide 19 text

ͨΊ͠ʹ͜ͷը໘ͰLaunchedEffectΛ͔ͭͬͯ
 BluetoothDevice.getName()Λ࣮ߦ͢Δͱ…

Slide 20

Slide 20 text

ͪΌΜͱname͕ฦͬͯ͘Δ!!

Slide 21

Slide 21 text

🤔

Slide 22

Slide 22 text

ࢼ͠ʹŊ͜ͷը໘ΑΓલͷը໘ͰߦΘ Ε͍ͯΔBluetoothGattʹΑΔຊ֨త ͳ௨৴Λ͢΂ͯল͍ͯΈΔ

Slide 23

Slide 23 text

primary buttonΛԡͯ͠
 BluetoothDevice.getName()Λ࣮ߦ͢Δͱ…

Slide 24

Slide 24 text

ͪΌΜͱname͕ฦ͖ͬͯͨ!!

Slide 25

Slide 25 text

ŪƄŴƄŧƄũƄ….

Slide 26

Slide 26 text

‣ ࠷ॳͷBluetoothDevice.getName()͸ਖ਼ৗ ‣ ී௨ʹύεϫʔυೖྗը໘ʹભҠ͖ͯͯ͠Ŋ઀ଓϘλϯԡ͞Εͯ getName -> null ‣ ී௨ʹύεϫʔυೖྗը໘ʹભҠ͖ͯͯ͠ŊLaunchedEffectͰ͍͖ͳ ΓgetName -> ͱΕΔ ‣ લը໘ΛͿͬͱ͹ͯ͠ύεϫʔυೖྗը໘ʹભҠŊ͸͡Ίͯ BluetoothDeviceͱconnect͢ΔλΠϛϯάͰgetName -> ͱΕΔ ͜͜·ͰͰΘ͔͍ͬͯΔ͜ͱ

Slide 27

Slide 27 text

BluetoothDevice.getNameͷ υΩϡϝϯτͱ࣮૷ΛΈͯΈΑ͏

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

No content

Slide 30

Slide 30 text

BluetoothDevice.getName͸ Ωϟογϡͨ͠nameΛଈ࣌ฦ͢ Ωϟογϡ͕ͳ͔ͬͨΒnullʹͳΓ͑ΔŇ ͦΕ͸ͦ͏Ň

Slide 31

Slide 31 text

͍··Ͱ(Android 13·Ͱ)Ͱ؍ଌͨ͜͠ͱ͸ͳ͔͕ͬͨ APIͷ࢓༷ͱͯ͠͸ى͖ಘΔ (ͱ͸͍͑όάͩͱ͸ࢥ͏Μ͚ͩͲ)

Slide 32

Slide 32 text

ΑʔΘ͔ΒΜ͔Βਖ਼ࣜϦϦʔεΛ·ͪ ͭͭŊͱΓ͋͑ͣҰ౓ͱΕͨname͸େ ࣄʹେࣄʹը໘ؒΛӪ͖ճ͠ͱ͘

Slide 33

Slide 33 text

͓͠·͍