« Gemini PDA USキーボード版の標準レイアウト初期設定 | トップページ | Gemini PDA カメラ、CTRLはAの横 »

2018/06/02

Gemini PDAのキーボードをカスタマイズする(root権限不要)

Gemini PDA USキーボード版ですけれど、大変気に入って毎日使っています。


ちょっと気になるのは、ハイフンや長音をFn+oで打鍵しなければ入らないのが面倒に感じることです。
もちろん、root権限付きのファームを書き込めば、keylayoutも、keycharsも好きなように書き換えできるわけですけれど、最近のAndroid端末はrootを取らなくても普通に使えることが多いので、root権限なしの標準ファームでいいやと思っているところです。


さて、非rootでキーボードのキーカスタマイズする方法として、Andorid4.1から、User-installable keymapsという仕組みでユーザーがインストール可能なキーボードマップをサポートするようになりました。日本語109キーボードを外付けで使うときに便利になったあの機能です。

この機能を利用して、Gemini PDAのキーの入れ替えができるはずです。アプリを作る必要はありますけれど、y10gさんがそのものずばりのソースを公開してくれていますので、これを参考にすればなんとかなるかもしれません。

公式のデベロッパーガイドでも、丁寧に説明があります。よくわかりませんけれど、たぶんなんとかなるでしょう。

というわけで、まずはAndroidの開発環境を作ってみます。今はAndroid Studioっていうのがあるのか、初めてダウンロードして入れてみます。


20180601

インストールが終わると、早速作ってみる感じです。

20180601_1


なんだかわかりませんけれど、初めてのアプリの作成ガイドの通りにやってみます。


20180602_1


チュートリアルが分かりやすいです。アプリの名前は「chgkey1」とかにして試してみるかな。
自分のドメインを入れます。公開しなければ、なんか適当なユニーク文字列でもいいかもしれません。(このドメインはアプリの特定のために、後でドット区切りを逆の順番に並び変えて記述します)

20180602_2

4.1以降の機能を使うし、はなからGemini PDA用です。ヌガー以降にしておこう。Andorid対象バージョンは7以降を選びます。


20180602_3

何も考えずに表示されたEmpty Activityのまま次へ進みます。Finishボタンを押して終了です。

ふむふむ。あっという間にhello worldアプリが一行のコードも書かずにできました。すごいな。Javaを全く書かなかったぞ。


さて、キーボードのキー入れ替えのアプリを作ります。hello worldアプリにちょっと手を加えるだけですみます。
y10gさんありがとうございます!感謝です。


いじるのは、
AndroidManifest.xml
と、
res/values/strings.xml
です。

追加したのは、
res/values-ja/strings.xml
res/xml/keyboard_layouts.xml
res/raw/chgkey1.kcm
です。

javaのコードは一行も書きません。xmlいじったのと、キーのキャラクター指定ファイルを置いただけなのです。

なんて簡単なんだ。


アプリ自体は自動生成されたHello World表示アプリですけれど、肝はユーザー作成のキーボードレイウトファイルを使えるようにしてインストールする指定をXMLで追記していることです。これだけで、サンプルアプリをインストールすれば標準の設定画面から物理キーボードのレイアウト選択画面で選べるようになるという寸法です。

まず、マニフェストに宣言します。公式デベロッパーサイトの該当ページのサンプルコードや、y10gさんのソースの通りです。 applicationタグの下に、receiverタグをサンプル通りに挿入すればおっけーです。

20180602_6


レシーバーで指定した@xml/keyboard_layoutsというリソースをresフォルダのxmlの下に放り込みます。
xmlフォルダごとファイルコピーすると、Android Studioから自動的に認識されました。

20180602_7

つぎに、自分が放り込むキーボードレイアウトに名前を付けます。Andorid標準の設定アプリで、物理キーボードのレイアウト一覧を選ぶときに何という名前で表示するかの指定です。

20180602_8

res/values/strings.xmlはアプリの名前だけ書かれて自動生成されていました。ここに行追加します。


20180602_9


日本語で表示したい場合に、
res/values-ja/strings.xml
をコピーします。Android Studio上でヒントから編集していっても作れます。


あとは、肝心のキーボードレイアウトファイルです。
これは事前に作っておいたのを、
res/raw/chgkey1.kcm
というファイルでコピーしました。

ぼくはUSキーボードモデルです。このkcmもUSキーボード用で、一か所だけ「-」と「\」を入れ替える単純なものです。

日本語キーボードモデルは持っていないので作っていません。
Geminiキーボードアプリを、たぶんESファイルエクスプローラーあたりでapkにして、拡張子をzipに変えて、keyboard_layout_japanese_gemini.kcmあたりを抜き出してそれをカスタマイズすればいいんじゃないかと想像します。


ともかく、ぼくはよく使う長音を1キーで打ちたいために、バックスラッシュキーを押せばハイフンが出る、Fn+oを押せばバックスラッシュが出るという単純なキーの入れ替えだけのkcmファイルとしました。

ほかのキーレイアウトにしたときは、kcmファイルだけ書き換えて入れてビルドすればいいということです。
klじゃなくてkcmなので、装飾キーの入れ替えは制限がありま す。klはroot取って変更ですね。

さて、ビルドしてみます。

20180602_10

ビルド通りました。


20180602_12


デバッグ用のapkを作ってみます。
できました。なにそれこわい。
Dropbox経由でGemini PDAに入れます。提供元不明のあぶないアプリです。

Screenshot_20180602074337

セキュリティ設定を変更しないとインストールできません。やばいもんだな。後で設定戻しましょう。

Screenshot_20180602074402

特別なアクセス許可を必要としないそうです。


Screenshot_20180602074410


インストールできてしまいました。やばいね。

Screenshot_20180602074414

実行する必要はありません。キーボードレイアウトをインストールすることだけが目的のアプリなので。実行してもHello worldが表示されるだけですけれど。


Screenshot_20180602074442


設定から「言語と入力」「物理キーボード」を開きます。
ぼくはATOKを使っているのでタップします。キーボードレイアウトの一覧がずらずら出てきます。


Screenshot_20180602074458

でたー。やったー。

Screenshot_20180602074503

これでバックスラッシュとハイフンを入れ替えたキーボードになりました。

早速Jota+などで試してみます。


Screenshot_20180602074623


うまくいきました。

配布するapkを作るためには、署名してリリース用のapkを作るみたいです。ドメインや名前、住所、パスワードなどを入れ、署名してリリースapkを作ってみます。
ふむふむ、


できました。

apkです。

「chgkey-test20180601.apk」をダウンロード

ソースです。

「chgkey1_20180601.zip」をダウンロード

というわけで、また一つ快適になりました。

|

« Gemini PDA USキーボード版の標準レイアウト初期設定 | トップページ | Gemini PDA カメラ、CTRLはAの横 »

コメント

どうもありがとう!!!
Geminiが快適になりました!!

投稿: | 2018/06/02 13:58

5chでここを教えてもらいました。
早速試してみましたがとても使いやすくなりました。
ありがとうございます。

投稿: | 2018/06/02 15:09

とても快適になりました。
ありがとうございます!

投稿: | 2018/06/02 16:28

快適な環境を築いて頂いてありがとうございます!

投稿: ししまる | 2018/06/02 22:50

まだGemini PDAは手元に届いていませんが「ー」問題は気になっていました。届きましたらアプリ使わせて頂きます!

投稿: UZ | 2018/06/03 09:14

ありがとうございます!!ありがたく使わせていただきます!

投稿: | 2018/06/10 12:28

たいへん助かります。まことにありがとうございましたm(_ _)m

投稿: | 2018/06/20 23:25

ありがとうございました。キーボードの不満が一気に解決してすっきりです。

投稿: | 2018/06/26 19:55

ありがとうございました。
とても助かりました。

投稿: | 2019/12/12 18:56

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: Gemini PDAのキーボードをカスタマイズする(root権限不要):

« Gemini PDA USキーボード版の標準レイアウト初期設定 | トップページ | Gemini PDA カメラ、CTRLはAの横 »