no-image

NOKIA E90のUAを動的に切り替える

一つ前のエントリで、HIISIさんが改造してくれた”iPhonesque改”を自分でビルドしてみたことを書きましたが、基本的な動作は、ふだんは705NKのUAだけど、マクドナルドとTSUTAYAのサイトだけは709SCのUAに切り替わる、というものでした。

このUAの切り替えを、一時的にオフにしたり、違うUAに切り替えたりできないか、という要望が某掲示板で出され、HIISIさんが対応したものがこちらの記事です。

やはり今は公開されていませんが、公開されたパッケージには、SISファイルのほかにPythonのスクリプトが含まれていました。

このスクリプトの当初の機能は、705NKのUAとオリジナルとの切り替えだけしかできませんでしたが、HIISIさん自身が現在使っているのは、現在のUAが何になっているのかを表示する機能と、いくつかのUAが追加されたもののようです。

UAを追加したいという希望は私も持っていたので、”iPhonesque改”のソースを修正して、別のUAにしたものをビルドし、”C:\sys\bin\”に置いておく”iphonesque.dll”ファイルをいくつか生成しました。結局は全部は使いませんでしたが。

UA動的切り替えのPythonのスクリプトは、中身を見ればUAファイルの追加程度は、すぐにわかると思います。

PythonのスクリプトのSISパッケージ化については、HIISIさんがこちらの記事にまとめてくれているので、それを参考にすれば、特に問題はないと思います。

それにしても、HIISIさん自身が現在使っているバージョンの「現在のUA表示」はぜひとも欲しいところです。

HIISIさんが、「単にフィルタのファイルサイズで判別すればいい」とヒントをくれているので、Pythonのスクリプトなんて今まで書いたこともないのですが、無謀にも改良に挑戦してみました。

単にPythonの文法もさることながら、S60用のライブラリの使い方など、ぜんぜんわかりません。

まずは、ファイルサイズの調べ方をググってみて、その結果をPC上で試し、次はS60端末上での画面への文字表示の仕方をググり、パッケージ化せずにpyファイルのままE90に転送して、E90のPython環境でデバッグしたりして、何とか形になりました。

とりあえずPySwUA改を起動すると、こんな画面になります。

Screenshot0006.jpg

左ソフトキーを押すと、こんなメニューが出てきます。

Screenshot0007.jpg

ここで、変更したいUAにカーソルを合わせて、決定キーを押すと、次のようになります。

Screenshot0008.jpg

変更したので、当然もとの画面の表示もそれにあわせて替わります。

Screenshot0009.jpg

まあ、見栄えはなんとも..という感じですが、Python初体験の私が1日で作ったにしては十分かな、と自己満足しています。

S60のPythonはいろいろできることが多いようで、ググってみると相当数のサンプルが出てきます。日本では、S60環境でのPython解説本は下記の本くらいしか見あたりません。


“Python for 702NK/702NK2プログラミングブック” (柴田 文彦)

結局は、私も英語のレファレンスを参考にしたのですが、その際見つけたこの本を注文してしまいました。


“Mobile Python: Rapid Prototyping of Applications on the Mobile Platform (Symbian Press)” (Jurgen Scheible, Ville Tuulos)

おそらくこの本の著者と思われる方のページに掲載されていたサンプルが参考になったので、感謝の意味合いも少し入ってます。

どちらにせよ、HIISIさんには感謝です。

こういう方々がいらっしゃるおかげで、私のE90も日々使いやすくなっていきます。