PiClipでお馴染みのあやまどりさんの所で知りました(タイトルも拝借)。
PicClipと同様MIDPによる10キー端末の漢字入力システムでツータッチ入力を採用したTTInputというプログラムが「TTInput 開発日記(仮名)」にてプレビュー版として公開されています。
一時期KKJConvに10キー入力を搭載しようと考えていた事があります。その時、どうせなら普通の携帯打ちでは無い方法をと頭をひねって考え出した物が結局の所、ツータッチに似た方法でした。ということもあって、どのように実装されているかと早速TTInput 0.0.1をダウンロードし705NKで試してみました。今のところ私の環境では漢字変換が出来ていませんがツータッチの入力方法を体験することは出来ました。メニュー構成や設定画面なども良い感じです。また記号入力画面での10キーの使い方なども効果的で参考になります。
PiClip, Qiiと並んで海外版10キー端末でのMIDPによる日本語入力の新たな選択肢となりそうな予感です。
PS. KKJConvの10キー入力ですが、やるとなると予測変換もどきが欲しいとか、普通の携帯打ちはイヤだとか色々考えているうちに中断中です。まぁ、一番の原因は私がQWERTYキーボードでしか文字入力したくないと思っていることかも(10キーデバイスは705NKしか持ってないし)。
追記) 漢字変換出来ました。単純に操作の問題でした。
以前S60の数少ない日本語によるアプリケーション開発のための情報源として紹介したPC Viewの「S60アプリケーション開発ガイド」に久しぶりにアクセスするとPC Viewは11月30日をもって閉鎖しましたと表示されます。一部の情報はNTT PCの公式サイトに移転するようなことが書かれていますが、そちらを見ても全然要領を得ません。
とりあえずGoogleのキャッシュで内容を見てみようと検索したところ何やら移転先らしいURLが見つかりましたのでリンクを張っておきます。
E61の初期のファームでEmakiを使っている時に最初に気がついたのですがエディターに文字をペーストするとプログラムが落ちます。その時は深く考えなかったのですが、自分で作ったプログラムでも同じ現象が発生したので調べたところKIS000354 – Application panic when using Ctrl+V (paste)という文章がForum NOKIAで見つかりました。
E61ファームウェア・バージョン1.0610.04.04でエディターにpasteするとWSERV 66というpanicが発生する。それでSolutionの所にはなんとSwEvent capabilityが必要と書かれています。うーむ、バグのwork aroundでcapabilityの付与とは、、、 まぁ、本当の対策はファームの更新なんでしょうね。

Googleの携帯電話プラットフォームAndroidのSDKがダウンロード出来るようになっています。とりあえず、という感じで入手してみました。
エミュレーターでブラウザーを動かしたのが左のスクリーンショットです。
Androidのデモビデオを見た感想がNo Mobil, No Lifeで述べられています。まったく同感です。
エミュレーターは簡単に動くので多くは語りません。興味のある方は試してみてください。SDKをダウンロードし適当なところに展開し、toolsフォルダーのemulator.exe(Windowsの場合です)を実行するだけです。SDKのダウンロードに当たって登録などもありません。
感心したのはSDKがWindows, Mac OS X, Linux(i386)の三種類用意されていることです。開発環境のためだけにWindows機を用意している人たちも多いことですし、これはウケが良いでしょう。

S60 C++ SDK向けにEseries SDK Plug-inが11月1日にリリースされました。これによりE61やE90向けのアプリケーションのテストが容易になります。
さっそく導入して試してみたのが上のプログラムです。E90の横長画面を生かして左半分にリスト、右側にエディターを配置してみました。余談ですが、これがS60 UI designの作法に則っているかどうかは不明です。おそらくE90の組み込みアプリケーションでリストの右に情報が表示されるものはPreview popupという別の手法を使っています。
深い意味はありませんが、Emulatorを日本語モードにすると、まだ見ぬE90日本語版?
このモードで上のプログラムを走らせるとAKNFEPでパニックになってしまうのは何故だろう?
E61 モードのエミュレーターもあって、キーボードもE61風のものになっています。
それにしても、私の本物のE90は何時になったらやってくるのか。eXpansysのE90在庫状況が本日再び20個になっていますので、少しは期待できるかも。
Nokia S60 3rdアプリケーション開発に必要な情報源のまとめです。C++を知っていてもSymbianのソースコードを見ると面食らいます。UIに関しては違ったプラットフォームで開発を始めるときには、それなりの準備が必要です。ということで、S60 3rdでプログラミングを始めたばかりの私が参考にしている情報源の紹介です。
[ Symbian OS/C++ プログラマのための Nokia Series 60 アプリケーション開発ガイド ]
私にとっては、ほとんどバイブルと言っても良いでしょう。高いですが、その値段に見合う価値があります。対象はS60 2ndなので、S60 3rdとの違いを別の情報で補う必要があります。ただしAPI、フレームワーク等「中身」に関しては、ほとんど差がないのでサンプルコードもルーチン単位では活用可能です。
文中のサンプルコードのダウンロード先URLが既に存在していません。サイモンを書いていた頃は仕方なく本文中に出てくるコードのみを参考にしていましたが、本文読んでいると後はコードを見れば分かります、みたいな所も多く困っていました。探してみたらForum Nokiaのココにサンプルコードが置いてありました。
[ DIGIらいふ〜スマートに行こう!〜 ] wikiサイト
M-FEPのま〜さんのwikiサイトです。Symbianの開発情報がまとめられつつあります。開発環境の構築手順、ケイパビリティと認証、開発者証明についてなど必読です(苦労の跡が伺えますm(__)m)。
[ PC View – S60アプリケーション開発ガイド ]
S60の開発を解説した連載ものです。S60 2ndからS60 3rdへの移植に関する情報は貴重です。
[ Symbian OS開発の勘所 ]
S60ではなくSymbianを解説した連載です。最初に書いた「面食らう」部分を分かりやすく独特な口調で説明しています。モバイルデバイスを以下に堅牢に作り上げていくかというSymbianの思想を学ぶのに最適です。
[ Forum Nokia ]
ご本家です。SDK等の入手先でもあります。押さえておくべき所はForum Nokia WikiとDeveloper Discussion Boardsでしょう。Googleで検索してもこの二つに行き着くことが多いです。
[ NewLC ]
S60に限らないSymbianの情報源です。コラム、サンプルコード、フォーラムなど幅が広いです。Symbian Signedの変更などもかなり前に情報が掲載されていました。
[ Google Code Search ]
ソースコード専門の検索エンジンです。すごく役に立ったというわけではありませんがS60のAPIとか検索かけて、それなりにコードが見つかります。
[ SDK ]
SDKにも色々と情報が付いてきます。SDK Help以外にもSDKを導入したディレクトリーにPDFドキュメントやサンプルコードが沢山入っています。SDKのバージョンによって内容は様々です。
[ 普通的生活工作室 – Crabide.c++のメモ ]
最後に私個人の覚え書きを紹介しておきます。
lumさんのページにてS60のPythonで書かれたプログラムが公開されています。その中の「絵巻」が面白いとピードラさんが紹介されているのを見て、さっそく試してみました。
最近、携帯端末のメモアプリとか文書管理アプリについて思いを巡らせていまして、ほんの数日前にEBtという面白いコンセプトのプログラムがZaurus向けに公開されているのを知りました。この絵巻は、それを拡張したものであるということです。これは、試してみなければなりません。
まだ数枚のテスト的な文書を入力したりMP3を添付したりしただけですが大きな可能性を感じます。文書管理というとカテゴリー分けというのは固定観念だというのを思い知らされました。ツリーではない自由なリンクによって一つ一つの文書が関連づけられていくのは、かなり快感です。こればかりは、実際にやってみないと分からないかもしれません。カテゴリーの変わりに大項目としての親文書を置いてつないでいくことも出来るでしょう。またアイデアのタネを思いつくまま書き込んで行き、関連することがらをリンクしながら大きな内容に育てていくことも可能でしょう。wikiの概念を思い出す方もいらっしゃるかも知れませんがwikiの場合はリンクがwiki nameに限定されているので少し違います。
細かい説明は各所でなされているので調べてみてください(すいません手抜きで^^;)。
それにしてもPythonもすごいです。これだけのことが出来て安定していれば、あえて面倒なSymbianのC++の世界に足を踏み入れなくてもアプリケーションが書けますね。署名からも解放されますしフリーウェアはPythonで書くという方向性が出てくるように思えます。MIDPから足を洗ってPython修行しようかなぁ。 😛
ボタンの速打ちをするとSimonが落ちてしまうことが分かりました。ビープが鳴っている間に次のボタン押下でビープを鳴らそうとして落ちていました。
Simon v1.1.0 にてボタン押下の処理の中で前のビープをキャンセルするようにしました。
Simonのページの実行ファイル、ソースコードとも更新いたしました。
MIDPからSMSを送る実験をしていて驚きました。左のキャプチャーは、ほとんどAPIの説明に載っているサンプルコードそのままのテストプログラムです。SMSを送るコードを書いただけなのにAdd from ContactsとCallというメニューが自動的に追加されていました。
これはTextBoxという部品(KKJConvのコピペ画面と同じ物)です。最初はTextBoxをTextFiled.ANYという属性で開いて、決め打ちの電話番号にSMSを送りテストの経過をTextBoxに表示させるという作業を行っていました。
Read the rest of this entry

S60のプログラミングの練習として作成したゲーム「サイモン」です。音と光で記憶力を試す懐かしのゲーム機サイモンをシュミレートしてみました。ちょっとした暇つぶし用に公開いたします。練習で作ったものですが、ちゃんとUID3(個々のアプリを識別するユニークなID、公開アプリに必須)を取得していますので導入関してご心配はいりません。
上のキャプチャー画像の言語は中国簡体字版です(解説にも書いていますが正しい用語を使っているかどうか不明)。英語、日本語、中国繁体字(簡体字を単純変換したもの)のリソースも含まれています。
導入できるのはS60 3rdのデバイスです。テストはE61で行っています。残念ながらSignedでは無いのでSoftBankのNokia携帯電話にはインストール出来ません。フリーウェア向けのSymbian Signedを取得する練習も気が向いたらしてみようかな。
ソースコードも公開します。S60のプログラムを習得するに当たってサンプルコードは沢山有った方が良いことを痛感しました。これからS60のプログラムを習得しようとする人の参考になればと思います。それなりにSymbianの作法にしたがったものに成っていると思います。また作法に従ってクラスを使い分けているのでクラスの役割を把握できれば読みにくくはないと思います(少なくともKKJConvみたいに一つのクラスの中で関数型プログラムをしているような事はありません)。もっともコード量が少ないというだけのことかも知れません。
ダウンロードおよび解説は下のURLからお願いします。
http://www.nkozawa.com/wiki/index.php?Simon