MIDPからSMSを送る実験をしていて驚きました。左のキャプチャーは、ほとんどAPIの説明に載っているサンプルコードそのままのテストプログラムです。SMSを送るコードを書いただけなのにAdd from ContactsとCallというメニューが自動的に追加されていました。
これはTextBoxという部品(KKJConvのコピペ画面と同じ物)です。最初はTextBoxをTextFiled.ANYという属性で開いて、決め打ちの電話番号にSMSを送りテストの経過をTextBoxに表示させるという作業を行っていました。
SMS自体を送るのはサンプル通りで大丈夫でとても簡単です。問題は電話番号の入力です。別のAPIでContactsを開いて電話番号を取り出して、、、とか考えていました。とりあえずTextBoxに入力した電話番号を送ることにします。TextBoxの属性を調べるとTextFiled.PHONENUMBERというものがあります。きっと、これを使うと電話番号に相応しくない文字列は排除されるのだろうくらいに思って試してみると何とメニューが増えました。TestとClearは自分で設定したメニューです。Add from ContactsとCallはPHONENUMBER属性により追加されたものです。Add from Contactsを選ぶとおなじみの電話帳画面になります。後は普通にSMSを送るときと同じで簡単に電話番号を選択できます。選択後の電話番号は当然TextBox上に現れます。それを取得してSMSを送れば良いわけです。もう一つのメニューCallはTextBox上の電話番号に音声通話を開始します。
KKJConvに組み込んでみると快適に動作します。もっと早く実装すれば良かったです。SMS送信機能付きKKJConvは近日公開予定です。
さすがはNokia芸が細かいと感心しつつ、またソニエリに多くを期待してはいけないと思いながらM600iで同じテストをしてみると、同様にContactsにアクセスして電話番号を取得できました。ソニエリもエライです。因みにAPIの説明によると、この属性により電話できたり電話帳にアクセスできたりするかも知れないと書いてあります。必須機能ではないので全ての携帯電話で使えるものではないでしょう。
PS. KKJConvにSMS送信機能があれば良いなというのは、だいぶ前から気づいていたのですが、なかなか重い腰が上がりませんでした。そんなとき10キーによるMIDP漢字入力ソフトPiClipの作者ayamadoriさんの新しい10キー入力ソフトQii(何とフォント内蔵です!)にSMS送信機能が付いているのを知りました。遅れを取ったとばかりにテストした次第です。
8 comments untill now