[Android] 日本語フォントの入れ替えを少しだけ楽にする

Android、特にG1/ADP1のような機種では、標準のフォントの漢字が日本語ではなく中国語ベースなので、少々気持ち悪い感じがする漢字も混じっているわけですが、

[Android] 日本語フォントへの入れ替え
http://mobile54sblog.blogspot.com/2009/07/android.html

でご紹介したとおり、@sakiraさんの方法ですんなり日本語フォントへの入れ替えができます。

さらに、いろいろなフォントへの入れ替え例を、コムギドットネットさんが掲載されていますので、この中で気に入ったものがあればさらに楽しみが広がりそうですね。

HT-03Aのフォントを変更する(コムギドットネットさん)
http://komugi.net/archives/2009/10/200910090738.php

さて、今日の話題はこれに関連して、このフォントの入れ替えを何度もしなければいけない状況下(ファームの入れ替えとかで)で、この作業を少しでも楽にしようというものです。私もここ最近はファーム入れ替えとかしてませんが、ファームアップする度にフォントが元に戻ってしまうので、結構この作業もバカにならないんですよね。

まあ・・・偉そうに言ってますが、要はシェルスクリプト(Windowsでいうところのバッチファイル)を作ってmicroSDに置いときましょう、というだけの話です。すいません。

開発しない方には面倒かもしれませんが、Android SDKを入れておくと作業がなにかと楽です。
非rooted phoneの場合、SDKのadb経由じゃないとrootになれない(例:ADP1)というのもあるので、この機会に入れておきましょう。

では手順です。

(1) シェルスクリプトを作成

PC側で、以下のようなファイルを作りましょう。仮に、jpfont.shとします。

★rooted phoneの方(CyanogenModなど)
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
#!/system/bin/sh

mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
cd /system/fonts
cp DroidSansFallback.ttf DroidSansFallback.ttf.orig
cp /sdcard/DroidSansFallback.ttf /system/fonts
mount -o ro,remount -t yaffs2 /dev/block/mtdblock3 /system
reboot
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

★非rooted phoneの方
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
#!/system/bin/sh

mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system
cd /system/fonts
cat DroidSansFallback.ttf > DroidSansFallback.ttf.orig
cat /sdcard/DroidSansFallback.ttf > /system/fonts/DroidSansFallback.ttf
mount -o ro,remount -t yaffs2 /dev/block/mtdblock3 /system
reboot
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

作成したら、コマンドラインより、

adb push jpfont.sh /sdcard

などとして転送します。入れ替え用のフォントファイルも、同様にして
/sdcard に入れておきましょう。

adb push DroidSansFallback.ttf /sdcard


(2) シェルスクリプトの実行

PCから接続してシェルスクリプトを実行します。rooted phoneかどうかで、suが必要かどうかが変わります(rooted phoneはadb shellの時点でsuになっているため)。

★rooted phoneの方(CyanogenModなど)
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
> adb shell ← PCのコマンドラインで実行
# sh /sdcard/jpfont.sh
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

★非rooted phoneの方
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
> adb shell ← PCのコマンドラインで実行
$ su
# sh /sdcard/jpfont.sh
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜

これでリブートがかかり、再起動後にフォントが入れ替わっているはずです。
rooted phoneの方は次からは端末内でTerminal Emulatorを起動して、直接
jpfont.shを実行しても構いません。

コメント

  1. 本日、acerのLIQUIDを友人からもらったのですが
    日本語 フォントの入れ方がいまいちわかりません。
    もしよしければ、アドバイスしていただけませんでしょうか?

    key0513_kingdom@gmail.com

    返信削除
  2. メールアドレスを間違えていました。
    kingdom0513@gmail.com

    返信削除
  3. kkさん>

    コメントありがとうございます。
    申し訳ありませんがメールではなくこちらに状況を書いて頂けませんか?
    ※ また、私はLIQUIDの実機は持っていませんので、お答えするとしてもあくまで参考程度になることをご承知おきください。

    もし、どうしてもメールでお聞きになりたいのでしたら、日本Androidの会に入会(メーリングリストに参加)して聞いてみることをおすすめします。結構いろいろな細かい質問にも回答がもらえるようですよ。
    http://android.siprop.org/

    返信削除
  4. いろいろ調べた結果、まず、root権限という
    のを取らない無理ということがわかったのですが
    root権限を取得する際、Androidにいればければ
    ならないアプリとかあります?

    返信削除
  5. kkさん>

    上記の記事中にもあるようにAndroid SDKを入れてadbコマンドで繋いでみてはどうでしょうか。

    ただしLIQUIDの場合にこの方法でrootがとれるのかは不明です。ADP1だけで有効なのかもしれませんので・・・。

    返信削除

コメントを投稿