SH-05EにGoogle音声認識を入れる(1)
SH-05EがSH-01Eもどきと書いたが、できないものの1つにGoogle音声認識がある。
SH-05Eは中に「しゃべってコンシェル」「しゃべって検索」「しゃべって入力」があるが、これはどうもDocomoのサービスで(SPモード契約の)SIMでやるようだ。元々WiFiがないのでそうなのかもしれないが。
MVNOのSIMだとどうもうまく動かない。動いてもなんだか限定的だし、WiFiも使えないし。
音声認識は、そう頻繁には使わないが、使えないと何かと不便も感じる。SH-01Eはちゃんと入っているがSH05Eは抜いてしまったようだ。
昔は独立したapkだったようだが今はライブラリも含めてAndroidの標準システムっぽい。(libに一部があるので)
いろいろ探しているとKindleFireも同じ状況らしい。
で
1.google_voice_search-[KINDLE_FIRE].apk
を入れる。(この名前で探せば出てくると思う。)
動作を確認する。
音声検索は動いた。
しかし、これはシステムではなく、1アプリとして動作する。なので、インテントを呼ぶようなものは全滅する。
・Chrome(これはインテントではなく上のapkを読んでいるのかもしれない。マイクアイコンが出て話せるが結果が出ない)
・GoogleMap(地点入力など):エラーする
・GoogleNavi(目的地など):エラーする
・GooglePlay:エラーする
・音声入力メモ:対応していないと出る
など悲しい結末になる。
そこでシステムに近づけるが、これもKindleFireの記事を見てやる。
2.google_voice_search-[KINDLE_FIRE].apkをVoiceSearch.apkに変名する。
また拡張子をzipにして解凍しlibvoicesearch.soを取り出しておく。
3.以下を実行する
adb push libvoicesearch.so /sdcard/Download/
adb push VoiceSearch.apk /sdcard/Download/
4.rootになってsystemを書き込み可能な状態にして(SH-01Eにした人はできていると思う)
/sdcard/Download/libvoicesearch.so を /system/libに
/sdcard/Download/VoiceSearch.apk を /system/appに
それぞれCopyする。
5.パーミッションの変更
/system/lib/libvoicesearch.so
/system/app/VoiceSearch.apk
の属性を644に変更する
6.再起動する
結果
・GoogleMap(地点入力など)
・GoogleNavi(目的地など)
・GooglePlay
・音声入力メモ
は動作するようになる。しかし
・Chromeの入力欄のマイク
は認識ダイアログは出て認識もしているっぽいが入力に入らない。
apkを入れただけでもそうなるので、これはインテントを呼び出しているのではなく、アプリで何か連携しているような印象。それが合わないのだろう。
Chromeで検索をかけたい場合は、「音声検索」から使えるのでよしとする。
他が動作したので、インテントとしては動作するようだ。
ちなみに107SHからVoiceSearch.apkを抜いて入れてみたが、うまく動かなかった。
多分SH-01Eのなら...と思うが、もってないし。
・音声検索
・GoogleMap(地点入力など)
・GoogleNavi(目的地など)
・音声入力メモ
などは地味に便利だったりする。
Chrome内の認識は少し残念だったが、一応は使えるってことで。
(多分SH-01のものを入れれば動くと思うが。)
コメントはありません