Akerun & BONX Tech Talk Supported by さくらインターネット ~IoTスタートアップを支えるエンジニアの夕べ~
ԻΨΠμϯεΛಋೖͨ͠Akerun & BONX Tech Talk Supported by ͘͞ΒΠϯλʔωοτʙIoTελʔτΞοϓΛࢧ͑ΔΤϯδχΞͷ༦ʙ@dealforestToshihiro Morimoto#anbtechtalk 2016/04/26
View Slide
ࣗݾհ
Agenda• ԻΨΠμϯεಋೖ/ܦҢ• ಡΈ্͛ػೳͷ͍ํ• ϋϚϦͲ͜Ζ
ԻΨΠμϯεಋೖ/ܦҢ
ԻΨΠμϯεΛಋೖ͢ΔҎલSE Λ໐Β͍ͯ͠·ͨ͠
͜ΕͰ͍͚Δͱࢥ͍ͬͯͨ࣌ظ͕ͨͪʹ͋Γ·ͨ͠
ͱ͜Ζ͕ݱ࣮ݫ͔ͬͨ͠
ςΟϩʔϯ㽈
( ୭͔͕ݍ֎ʹͳͬͨ )
( ୭͔͕ ೖࣨ / ୀࣨ ͨ͠ )
;Δͬ;ʙ㽈
( σόΠεͱ BLE ଓཱ͕֬ͨ͠ )
τΡϧʔϯ㽈
( σόΠεͱ BLE ଓ͕அͨ͠ )
…
SE ͚ͩͩͱதͷਓͰ͑͞Կ͕ى͍ͬͯ͜Δ͔ѲͰ͖ͳ͔ͬͨ
݁ہɺτʔΫը໘Λݟͳ͍ͱͲ͏͍͏ঢ়گ͔Ѳ͢Δ͜ͱ͕Ͱ͖ͳ͔ͬͨ
τʔΫը໘
ͯ͞ʂʂʂ
ઇࢁͰϘʔυΛ͍ͯ͠Δ࣌Λ૾ͯ͠Έ·͠ΐ͏
ઇࢁ͍͜͞ʔʔʔʔ \(^o^)/
͋ΕɺٸʹԠ͕ͳ͘ͳͬͨʁ
ͪͬ…
άϩʔϒ֎ͯ͠
ܞଳऔΓग़ͯ͠
ϩοΫղআͯ͠
τʔΫը໘Λ֬ೝ
ঢ়گΛѲ͍͚ͨͩ͠ͳͷʹ͜ΕΛ܁Γฦ͞ͳ͍ͱ͍͚ͳ͍
͜Ε͕ʑ͋Δͱ…
ͭΒ͔͞͠ͳ͍
ԻΨΠμϯεΛಋೖ͢Δ͜ͱͰ͋Δఔվળ͞Ε·ͨ͠
͜Ε͔ΒԻΨΠμϯεΛ࣮ͨ͠ݟΛڞ༗͍͖ͯ͠·͢
Ͱ࣮ࡍʹ BONX ͰͲͷΑ͏ͳγʔϯʹྲྀΕΔͷ͔Έ͍͖ͯ·͠ΐ͏
ࣗͷঢ়ଶΛಡΈ্͛Δ• ϛϡʔτʹΓସ͑ͨ• ిڥ͕ѱ͘ͳͬͨ• ࣗಈ࠶ೖࣨॲཧΛߦ͍ͬͯΔ• (ϧʔϜʹೖୀࣨͨ͠)
ଞϝϯόʔͷঢ়ଶΛಡΈ্͛Δ• ϧʔϜʹೖୀࣨͨ͠• ϛϡʔτʹΓସ͑ͨ• ిڥ͕ѱ͘ͳͬͨ
ಡΈ্͛ػೳͷ͍ํ
ಡΈ্͛ػೳͷ͍ํimport AVFoundationlet text = “iOS ΤϯδχΞืूதʂʂ”let utterance = AVSpeechUtterance(string: text)AVSpeechSynthesizer().speakUtterance(utterance)
؆୯Ͱ͢Ͷ
ઃఆ͢Δͱ͖Analytics ͷ Event Λઃఆ͢Δͷͱಉ͡Α͏ͳײ͡Ͱ͢
ઃܭϒϨΠΧʔʹͳΓ͍͢ͷͰͲ͜Ͱ໐Β͔͢ΛܾΊΔ࣌ʹҰॹʹ͋ͬͨ͠ํ͕͍͍Ͱ͢
ϋϚϦͲ͜Ζ
ϋϚϦͲ͜Ζ• iOS ͷόʔδϣϯ, ݴޠઃఆʹΑͬͯ࠶ੜ͕ҟͳΔ• ݴޠઃఆʹΑͬͯ࠶ੜ͞Εͳ͍ςΩετ͕͋Δ• μοΩϯά͕ൃੜ͢Δ• SpringBoard ͰΫϥογϡ͢Δͱ͖͕͋Δ
iOS ͷόʔδϣϯ, ݴޠઃఆʹΑͬͯ࠶ੜ͕ҟͳΔAVSpeechUtteranceDefaultSpeechRate Λઃఆ͍ͯͯ͠iOS ͷόʔδϣϯɺͷݴޠઃఆʹΑͬͯςΩετͷಡΈ্͕͛ҟͳΔutterance.rate = AVSpeechUtteranceDefaultSpeechRate͜Εͩͱ iOS8 Ͱ࠶ੜͨ͠߹ʹ࠶ੜ͕͍ʂ
AVSpeechUtteranceDefaultSpeechRate ͷͲͷڥͰಉ͡ํ͕ͳ͍ͷͰόʔδϣϯɺݴޠຖͰ࠶ੜΛม͍͑ͯΔ[iOS9]utterance.rate = AVSpeechUtteranceDefaultSpeechRate[iOS8 - ຊޠ]utterance.rate = AVSpeechUtteranceDefaultSpeechRate * 0.3[iOS8 - ӳޠ]utterance.rate = AVSpeechUtteranceDefaultSpeechRate * 0.5iOS ͷόʔδϣϯ, ݴޠઃఆʹΑͬͯ࠶ੜ͕ҟͳΔ
ݴޠઃఆʹΑͬͯ࠶ੜ͞Εͳ͍ςΩετ͕͋Δ• BONX Ͱຊޠ / ӳޠΛαϙʔτ• ݴޠઃఆ͕ӳޠͩͱϚϧνόΠτͷจࣈྻΛ͢ͱɹɹɹԿಡΈ্͛ΒΕͳ͍ASCII Ҏ֎ͷจࣈྻؚ͕·ΕΔ߹ someone Ͱସ͍ͯ͠Δ• ಡΈ্͛ݴޠͷ ͔ͳ Λࣄલʹͱ͓͔ͬͯͳ͍ͱਖ਼֬ʹಡΈ্͛Δ͜ͱෆՄೳࣈΛͲͷΑ͏ʹಡΈ্͛ΒΕΔ͔ Apple ͞Μ࣍ୈ
μοΩϯά͕ൃੜ͢ΔμοΩϯάͱ…ԻָΛௌ͍ͯΔ࣌ʹ push ௨͕དྷͨࡍʹҰఆ࣌ؒԻָͷϘϦϡʔϜ͕খ͘͞ͳΔ͜ͱ
μοΩϯά͕ൃੜ͢Δ• AVAudioPlayer ͰԿ͔Λ࠶ੜ͍ͯ͠Δ߹ʹɺಡΈ্͛ػೳΛ͏ͱࣗಈతʹ ducking ͞ΕΔ (ڧ੍)• ղܾࡦͱͯ͠ಡΈ্͛ػೳΛ͏ࡍʹ 0.1 ඵશͯͷAVAudioPlayer ͷ࠶ੜΛࢭΊΔ͜ͱͰճආͰ͖Δ
SpringBoard ͰΫϥογϡ͢Δͱ͖͕͋ΔAXSpeechManager ͷॳظԽͰΫϥογϡ͢Δ݁ہݪҼ͕Θ͔ΒͣΛग़ՙঢ়ଶʹɹͤΫϥογϡ͠ͳ͘ͳͬͨCrash in CFStringConvertNSStringEncodingToEncodinghttps://forums.developer.apple.com/message/17681
ઃఆ → Ұൠ → ΞΫηγϏϦςΟ → VoiceOver → εϐʔνDL ͢Εߴ࣭ͷԻΛ໐Β͢͜ͱͰ͖·͓͢·͚
·ͱΊ͋·Γࣄྫ͕ͳ͍ͷͰϋϚΓॴͦΕͳΓʹ͋Γ·ͨ͠
·ͱΊͨͩ BONX Ͱಋೖͨ͜͠ͱʹΑΓؒҧ͍ͳ͘UXվળ͞Ε·ͨ͠
·ͱΊIoT σόΠεͱ૬ੑ͕ྑ͍ͱࢥ͏ͷͰಉ͡Α͏ͳΈͷॿ͚ͱͳΕ͍Ͱ͢
We are Hiring!!
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠