Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
音声ガイダンスを導入した話
Search
Toshihiro Morimoto
April 26, 2016
Technology
0
3.9k
音声ガイダンスを導入した話
Akerun & BONX Tech Talk Supported by さくらインターネット
~IoTスタートアップを支えるエンジニアの夕べ~
Toshihiro Morimoto
April 26, 2016
Tweet
Share
More Decks by Toshihiro Morimoto
See All by Toshihiro Morimoto
Xcode8 で開発はどうかわったのか
dealforest
10
6.3k
魅せるデバッグ技術
dealforest
4
1.5k
LLDB の世界からみた Swift
dealforest
4
5.3k
Xcode で快適なデバッグライフを追い求める
dealforest
29
24k
Intrducing debug in WWDC2016
dealforest
3
780
swift build と Xcode での Build の違い
dealforest
3
2.1k
RIP Xcode Plugin 🙏
dealforest
0
4.8k
Introducing Xcode Editor Extension
dealforest
2
4.6k
Introducing Anglerfish
dealforest
2
3.4k
Other Decks in Technology
See All in Technology
身近なCSVを活用する!AWSのデータ分析基盤アーキテクチャ
koosun
0
1.5k
Devoxx Morocco 2025 - Like Spring but faster: The new Java Jedi
edeandrea
PRO
0
100
LINEヤフー バックエンド組織・体制の紹介
lycorptech_jp
PRO
0
770
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
620
持続可能なアクセシビリティ開発
azukiazusa1
4
140
ユーザーストーリー x AI / User Stories x AI
oomatomo
0
200
アジャイル社内普及ご近所さんマップを作ろう / Let's create an agile neighborhood map
psj59129
1
130
JavaScript パーサーに using 対応をする過程で与えたエコシステムへの影響
baseballyama
1
100
[mercari GEARS 2025] なぜメルカリはノーコードを選ばなかったのか? 社内問い合わせ工数を60%削減したLLM活用の裏側
mercari
PRO
0
120
生成AIではじめるテスト駆動開発
puku0x
0
120
[mercari GEARS 2025] Keynote
mercari
PRO
1
280
大規模モノレポの秩序管理 失速しない多言語化フロントエンドの運用 / JSConf JP 2025
shoota
0
180
Featured
See All Featured
The Language of Interfaces
destraynor
162
25k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
11
930
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
320
Testing 201, or: Great Expectations
jmmastey
46
7.8k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Designing Experiences People Love
moore
142
24k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Visualization
eitanlees
150
16k
Transcript
ԻΨΠμϯεΛಋೖͨ͠ Akerun & BONX Tech Talk Supported by ͘͞ΒΠϯλʔωοτ ʙIoTελʔτΞοϓΛࢧ͑ΔΤϯδχΞͷ༦ʙ
@dealforest Toshihiro Morimoto #anbtechtalk 2016/04/26
ࣗݾհ
Agenda • ԻΨΠμϯεಋೖ/ܦҢ • ಡΈ্͛ػೳͷ͍ํ • ϋϚϦͲ͜Ζ
ԻΨΠμϯεಋೖ/ܦҢ
ԻΨΠμϯεΛಋೖ͢ΔҎલ SE Λ໐Β͍ͯ͠·ͨ͠
͜ΕͰ͍͚Δͱࢥ͍ͬͯͨ࣌ظ͕ ͨͪʹ͋Γ·ͨ͠
ͱ͜Ζ͕ݱ࣮ݫ͔ͬͨ͠
ςΟϩʔϯ㽈
( ୭͔͕ݍ֎ʹͳͬͨ )
ςΟϩʔϯ㽈
( ୭͔͕ ೖࣨ / ୀࣨ ͨ͠ )
;Δͬ;ʙ㽈
( σόΠεͱ BLE ଓཱ͕֬ͨ͠ )
τΡϧʔϯ㽈
( σόΠεͱ BLE ଓ͕அͨ͠ )
…
SE ͚ͩͩͱதͷਓͰ͑͞ Կ͕ى͍ͬͯ͜Δ͔ѲͰ͖ͳ͔ͬͨ
݁ہɺτʔΫը໘Λݟͳ͍ͱ Ͳ͏͍͏ঢ়گ͔ Ѳ͢Δ͜ͱ͕Ͱ͖ͳ͔ͬͨ
τʔΫը໘
ͯ͞ʂʂʂ
ઇࢁͰϘʔυΛ͍ͯ͠Δ࣌Λ ૾ͯ͠Έ·͠ΐ͏
ઇࢁ͍͜͞ʔʔʔʔ \(^o^)/
͋ΕɺٸʹԠ͕ͳ͘ͳͬͨʁ
ͪͬ…
άϩʔϒ֎ͯ͠
ܞଳऔΓग़ͯ͠
ϩοΫղআͯ͠
τʔΫը໘Λ֬ೝ
ঢ়گΛѲ͍͚ͨͩ͠ͳͷʹ ͜ΕΛ܁Γฦ͞ͳ͍ͱ͍͚ͳ͍
͜Ε͕ʑ͋Δͱ…
ͭΒ͔͞͠ͳ͍
ԻΨΠμϯεΛಋೖ͢Δ͜ͱͰ ͋Δఔվળ͞Ε·ͨ͠
͜Ε͔ΒԻΨΠμϯεΛ ࣮ͨ͠ݟΛڞ༗͍͖ͯ͠·͢
Ͱ࣮ࡍʹ BONX Ͱ ͲͷΑ͏ͳγʔϯʹྲྀΕΔͷ͔ Έ͍͖ͯ·͠ΐ͏
ࣗͷঢ়ଶΛಡΈ্͛Δ • ϛϡʔτʹΓସ͑ͨ • ిڥ͕ѱ͘ͳͬͨ • ࣗಈ࠶ೖࣨॲཧΛߦ͍ͬͯΔ • (ϧʔϜʹೖୀࣨͨ͠)
ଞϝϯόʔͷঢ়ଶΛಡΈ্͛Δ • ϧʔϜʹೖୀࣨͨ͠ • ϛϡʔτʹΓସ͑ͨ • ిڥ͕ѱ͘ͳͬͨ
ಡΈ্͛ػೳͷ͍ํ
ಡΈ্͛ػೳͷ͍ํ import AVFoundation let 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.5 iOS ͷόʔδϣϯ, ݴޠઃఆʹΑͬͯ࠶ੜ͕ҟͳΔ
ݴޠઃఆʹΑͬͯ࠶ੜ͞Εͳ͍ςΩετ͕͋Δ • BONX Ͱຊޠ / ӳޠΛαϙʔτ • ݴޠઃఆ͕ӳޠͩͱϚϧνόΠτͷจࣈྻΛ͢ͱɹɹɹ ԿಡΈ্͛ΒΕͳ͍ ASCII
Ҏ֎ͷจࣈྻؚ͕·ΕΔ߹ someone Ͱସ͠ ͍ͯΔ • ಡΈ্͛ݴޠͷ ͔ͳ Λࣄલʹͱ͓͔ͬͯͳ͍ͱਖ਼֬ʹ ಡΈ্͛Δ͜ͱෆՄೳ ࣈΛͲͷΑ͏ʹಡΈ্͛ΒΕΔ͔ Apple ͞Μ࣍ୈ
μοΩϯά͕ൃੜ͢Δ μοΩϯάͱ… ԻָΛௌ͍ͯΔ࣌ʹ push ௨͕དྷͨࡍʹ Ұఆ࣌ؒԻָͷϘϦϡʔϜ͕খ͘͞ͳΔ͜ͱ
μοΩϯά͕ൃੜ͢Δ • AVAudioPlayer ͰԿ͔Λ࠶ੜ͍ͯ͠Δ߹ʹɺಡΈ্͛ػೳ Λ͏ͱࣗಈతʹ ducking ͞ΕΔ (ڧ੍) • ղܾࡦͱͯ͠ಡΈ্͛ػೳΛ͏ࡍʹ
0.1 ඵશͯͷ AVAudioPlayer ͷ࠶ੜΛࢭΊΔ͜ͱͰճආͰ͖Δ
SpringBoard ͰΫϥογϡ͢Δͱ͖͕͋Δ AXSpeechManager ͷॳظԽͰΫϥογϡ͢Δ ݁ہݪҼ͕Θ͔ΒͣΛग़ՙঢ়ଶʹɹ ͤΫϥογϡ͠ͳ͘ͳͬͨ Crash in CFStringConvertNSStringEncodingToEncoding https://forums.developer.apple.com/message/17681
ઃఆ → Ұൠ → ΞΫηγϏϦςΟ → VoiceOver → εϐʔν DL
͢Εߴ࣭ͷԻΛ໐Β͢͜ͱͰ͖·͢ ͓·͚
·ͱΊ ͋·Γࣄྫ͕ͳ͍ͷͰ ϋϚΓॴͦΕͳΓʹ͋Γ·ͨ͠
·ͱΊ ͨͩ BONX Ͱಋೖͨ͜͠ͱʹΑΓ ؒҧ͍ͳ͘UXվળ͞Ε·ͨ͠
·ͱΊ IoT σόΠεͱ૬ੑ͕ྑ͍ͱࢥ͏ͷͰ ಉ͡Α͏ͳΈͷॿ͚ͱͳΕ͍Ͱ͢
We are Hiring!!
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠