水たまりは希望を写している

Samsung DeX で任意のキーボードアプリを使う

Galaxy シリーズのスマートフォン・タブレットに搭載されている Samsung DeX は Galaxy デバイスにデスクトップ環境を提供する機能なのだが、残念な仕様がひとつある。それは「キーボードが強制的に Samsung キーボードに切り替わる1日本向けの Galaxy は Galaxy キーボードに名称が変更されている。が、このブログ記事では Samsung キーボードに呼称を統一する。」ことだ。勝手に切り替わり、設定画面から変更することもできなくなる。

「Gboard を使う方法」を改良する

ちーさま氏が公開している、Samsung DeX で Gboard を使うを参考にして、任意のキーボードアプリで使えるよう改良する。

Tasker に WRITE_SECURE_SETTINGS を付与する

設定の Secure テーブルを書き換えできるよう、Tasker に Android の権限 WRITE_SECURE_SETTINGS を付与する。元記事で説明されているので、詳しい説明は割愛する。Android Debug Bridge (ADB) が使える環境で、

adb shell pm grant net.dinglisch.android.taskerm android.permission.WRITE_SECURE_SETTINGS

を実行する。

Tasker にインポートする

プロファイルを作ってくれているので、活用させていただく。元記事にあるプロファイルをダウンロードして、Tasker にインポートする。

現在のキーボードアプリを取得するタスクを作る

ものぐさな人のために : 完成済のタスクをダウンロード

では、任意のキーボードアプリを Samsung DeX で使えるよう、改良していこう。まずは現在のキーボードアプリを Tasker の変数に格納するタスクを作る。

名前は適当に「Get Current Keyboard App」とでもしておこう。「カスタム設定」というアクションを追加する。画像のように設定する。

コピペ用 : default_input_method / %DeXKeyboardApp

変数名の %DeXKeyboardApp は好みによって変えても良い。頭文字を大文字にすると、その変数はグローバル変数となり、他のタスクから参照することができる

タスクを作ったら、必ず左下の実行ボタンを押す。そうでないと変数に値が代入されない。実行すると、Tasker の「変数」タブで値が代入されたことが確認できる。僕は ATOK を使っているので、com.justsystems.atokmobile2.pv.service/.AtokInputMethodService になった。

インポートしたタスク Enable Gboard を編集する

取得したキーボードアプリが変数に格納されているのでこれを インポートしたタスク Enable Gboard で読み取るよう変更する。画像のように、本来 com.google.android.inputmethod.latin/com.android.inputmethod.latin.LatinIME だったところを %DeXKeyboardApp に変える。できたら、Tasker を終了して保存し、実際に Samsung DeX を起動してキーボードアプリが変わるか確認してみる。

確認

Samsung キーボードではなく、使いたいキーボードアプリが Samsung DeX 内で使われることを確認する。僕は ATOK PRO が使えることを確認できた。

Bluetooth キーボードでも問題なく動作する。まるで Chromebook のよう。

普段使うキーボードアプリを変えた後は、Get Current Keyboard App を再度実行して、変数の中身を更新することで、Samsung DeX にも適用されるようになる。

  • 1
    日本向けの Galaxy は Galaxy キーボードに名称が変更されている。が、このブログ記事では Samsung キーボードに呼称を統一する。