久しぶりにHTCの携帯電話を購入しました。HTC Universal, X01HTにつぐ三代目のHTC機として購入したのはHTC Desire Zです。考えてみると全部QWERTYキーボードが付いたデバイスですね。
何時も行っている不夜城のお店で台湾版HTC Desire ZとT-Mobile G2を見せてもらいました。値段は台湾版が少しだけ高かったです。細かいスペックの差があるのかどうかは分かりませんでしたが、キートップがすっきりしているT-Mobile G2の方を購入しました。因みに本体の購入価格は2700元です。まだ使いこんだわけでは有りませんが、簡単に印象などを書いてみます。
[ 重い ] です。 Nokia E90ほどではありませんが、手に持った感じはずっしりきます。固いところに落とすとインパクトが大きそうです。ストラップを付けるところも有りませんし外で使うときは、まだドキドキしながらケースから取り出しています。
[ キーボード ] は想像していたよりはるかに打ちやすかったです。一番上の段も無理なく打てます。開閉機構などのメカニカルな部分はNokiaのデバイスに比べるとちゃちに見えます。耐久性さえあれば良いのですが。
[ 液晶 ] は3.7インチで携帯デバイスとしては十分に大型で見やすいです。最近はiPod Touchのretinaディスプレイの美しさに慣れていたのでギザギザとか見えるとやだなと思っていましたが、かなり綺麗に見えます。480×800のディスプレイですので計算してみると252DPIほどになります。retinaディスプレイの326DPIには及びませんが十分に細かいということでしょう。因みに最近画面がギザギザに感じて仕方のないiPadは132DPIです。
[ 電池 ] のもちは、最近のデバイスとしてはまずまずという感じがします。ガシガシ遊んでいると、それこそ数時間で無くなってしまいます。メール、SMSときどき地図くらいの心構えなら一日何とか使える気はします。念のため予備電池は購入しておこうと思っています。
[ 充電 ] に対する自由度は高いです。Nokia N900ではケーブルを選んだり電流がある程度確保出来ないと充電を始めませんでしたがHTC Desire Zは今のところ問題なしです。エネループ・モバイルブースターと適当なケーブルで接続すれば充電出来るようです。
実験中だったNokia E7-00対応(一部 N97mini対応)部分を取り入れた KKJConv v1.15 を公開致します。
修正内容:
– Nokia E7-00のフルキーボード対応
詳しくは後述
– CAPS時のバックスペース・キー機能変更
以前はShift/CAPS表示の時はバックスペース・キーを削除キーとして機能させていましたが、自分でも時々動作に戸惑うのでShift時は削除、CAPS時は通常のバックスペースとしました。<- 別のアイデアもあるので、近いうちにまた変更するかもです。
– ブログ「今日の○○」の管理人さまがKKJConv用のアイコンを大きくしてくれました。かなり大きいですがE90のQVGAでも表示できているので最近のノキアであれば大丈夫と思います。念のため従来のアイコンを使用したものも用意しています。
[ E7-00 での使用方法 ]
– 改行キーの代替
改行キーが機能しません。そのため、代替キーとして’@’キーを割り当てています。改行あるいは変換文字列の確定には’@’キーを押してください。また、Ctrl+jも同様に機能します。
– シフト・モード
シフトキーの扱いが従来機種と変わりましたので、画面表示に忠実に入力するための「厳格なシフトモード」という設定をKKJSetupに新設しました。E7-00では、これがディフォルトでオンになっています。
– 数字、記号入力
数字記号入力のためのキーを押してもKKJConvのシフトモードが変化してしまいますが、実際の数字記号入力には関係有りません。数字記号入力の現在の状態はKKJConv動作時には表示されませんのでご注意下さい。他の画面で数字記号入力の挙動になれていただくしか有りません。
– Ctrlキー
Ctrl+c, Ctrl+jなどを使用する事が多いと思います。しかしながらE7-00本体が持つシフトモードによりCtrl+c等を押下してもCが入力されてしまう事があります。その場合はシフトを一度もしくは二度押してからお試しください。
Nokia E7-00のKKJConv対応で、どうやっても解決出来無い部分が残ってしまいました(これはN97miniやN97から同じかも知れないです)。E7-00に搭載されているQWERTYキーボードがMIDPアプリケーションからどのように見えるかという問題です。
[ 改行キーでキーコードが発生しない ]
改行キーが何も役割を与えられていない訳ではありません。通常のMIDPアプリケーションで改行キーを押すと左側ソフトキーに対応するメニューが開くようになっています。タッチデバイスということで何かしらの配慮から、こうなったのかも知れませんがQWERTYキーボードとして使用する上では、かなり不自然で不便です。メニューの存在しない(正確にはリスナーを登録しない)テストプログラムも試してみましたが、やはりkeyPressed(int)やkeyReleased(int)でキーコードを得ることは出来ませんでした。
CtrlキーがあるE7-00ではCtrl+jで改行キーを代用出来るのですが、ここにも落とし穴(後述します)あるので’@’キーを改行キーの代用として割り当てています。
[ シフトモードが分からない ]
通常のシフト、数字記号用のシフト、あるいはSymキーを押すと通常の画面ではシフトモードが画面上部に表示されます。ところがMIDPでは、非フルスクリーンな表示でもシフトモードが表示されません。シフトモードは通常と同じく、一回押すとシフト、2回押すとシフトロックという動作なので、それを自分で把握して入力しなければ行けません。
E90やE63もMIDPではシフト状態の表示はありません。しかしながらシフトを押しても次に入力される英字には影響されず常に小文字が入力されました。つまりアプリケーションにシフト状態の管理が任されていました。それ故、何の表示もないことが正しかった訳です。またE63では数字記号モードはMIDPに入る前に効いていますが、それだけを使用者が自己管理すれば良かったので然程混乱することはありません。
[ 数字記号シフト、Symキーもシフトキーと同じキーコードが発生する ]
どれもシフトの仲間だからということでシフトキーと同じキーコードを割り当てたのかも知れませんが、それが役に立つ場面が思いあたりません。E90やE63では数字記号シフトは何もキーコードを発生しませんでした。それ故にシフト状態をアプリケーション内部で管理するということが容易に出来ていました。
KKJConvとしては、いっそのことシフト表示を止めてしまうかと思いましたが、今のところはシフト表示に合わせて大文字、小文字の相互変換を行っています。ロジックの都合によりシフトを押したままで英字入力が二文字目からは小文字に成ってしまいます。これも、致し方なしです。
[ Ctrl + 英字が効かない事がある ]
英字を入力する際、本体のシフトモードに応じてMIDPアプリケーションに渡されるキーコードが小文字だったり大文字だったりするのは構いません。ところが、Ctrlキーと英字キーを同時に押して発生させるコントロール・コードがシフトモードによって左右されています。シフトモードが大文字に成っている時にCtrl+Jが押されると、キーコードは’J’が発生してしまいます。E90, E63では常に期待どおりのコントロール・コードが発生します。特にE63では数字記号シフトにロックされていてもCtrl+jなら改行キーとして機能します。
Ctrlキーはもともと押下状態かどうかがMIDPアプリケーションでは感知出来ないのでKKJConv側では対処の方法がありません。
ps. 一縷の望みを託してForum Nokiaにてバグレポートいたしました。直ると良いなぁ。
数日前の記事にNokia E7-00のMIDPにてナビキーがQWERTYキーボードのa,w,s,dに割り当てられていると書きました。この解釈は間違ってはいませんが、もう少し詳しい仕組みが分かりました。現在確認されているところではN97 miniも同じ仕組です。他にも該当デバイスがあるかも知れません。
MIDPにおいては幾つかのキーが予め定義されています。携帯電話の10キー(0-9, *, #)とゲーム用のキーです。詳しくはCanvasクラスの説明の冒頭部分に記述されています。ゲーム用のキーについてはキーコードが決め打ちされている訳ではありません。CanvasクラスのgetKeyCode(int)メソッドでキーコードを取得すると、そのデバイスで使用するゲームキー(Up, Down, Left, Right, Fire)が初めて分かるという仕組みになっています。
KKJConvでは、上下左右にカーソルを動かすためのキーコードをgetKeyCodeで取得しています(一部例外あり)。その結果、E7-00ではa, w, s, dが上下左右のキーとして返っていました。そのためKKJConvにおいてもa, w, s, dを押すとカーソルが動くという結果になりました(同じ理由で本当のカーソルキーは無視)。ただし実際のキーコードはascii文字としてのa, w, s, dそのものでした。また、キーボード右下にあるカーソルキーも正しく反応していて、他のデバイスと全く同じキーコードが出ていました。
ということで、KKJConvではE7-00とN97mini(あと詳細は忘れましたがソニエリも以前から)ではgetKeyCodeを使わず決め打ちのキーコードでカーソルを移動することにしました。もしかすると全くgetKeyCodeを使わなくても良いような気もします。
[ まだ残る謎 ]
これでカーソル移動については簡単に解決しましたが、改行キーの謎は残っています。現在の所、改行キーを押すとメニューが表示されてしまいます。 これが、ちゃんと改行キーとして働けば、素直な動作環境になります。今現在は仕方なく@を改行キーの代替キーとして割り当てています。
日刊KKJConv状態ですが、今日も小さな変更を行いました。
– 昨日のバージョンでN97mini向けに発信ボタンを改行に割り当てましたが失敗しました。詳しくは紅玉さんのブログを御覧ください。改行キーの割り当てそのものも失敗ですが、通話画面が立ち上がるのは想定外でした。暫定的にN97miniもE5-00同様に’@’に割り当てました。
– E7-00に置いてKKJConvのシフト表示が無いときにも大文字で英字が入力されてしまう事があるので、これを修正。ただしBTキーボードなどでシフトを押したまま英字を入力する時に小文字になってしまう副作用があります。設定画面で従来の動きとの切り替えを出来るようにするつもりです。
[ 導入 ]
以下のURLにデバイスからアクセスしKKJConvの所をクリックします。
http://www.nkozawa.com/kkjtest/
辞書の大きさ別にL版, MML版, M版を用意しました。お好きな物をお選び下さい。
[ 使用方法 ]
改行キーの代替はE7-00, N97mini共に’@’キーになっています。N97miniでは記号キーとの併用になると思います。
ご意見、ご希望がありましたら、コメント、メール、呟き何でも構いませんのでお寄せください。
昨日のバージョンは一部、想像と違う動きをしていました。ナビキーのアサインを勘違いしていたためですが、それを調査する過程でより本質的にナビキーの謎を解くことが出来ました。結果から言うと通常のカーソルキーが使用できるようになったはずです。ただし改行キーについては未だ解決出来無いので、代替キーをアサインする方向で考えています。
[ 導入 ]
以下のURLにデバイスからアクセスしKKJConvの所をクリックします。
http://www.nkozawa.com/kkjtest/
辞書の大きさ別にL版, MML版, M版を用意しました。お好きな物をお選び下さい。
[ 使用方法 ]
昨日のNaviモードは廃止しました。普通にカーソルキーを使用してみてください。
改行キーは未だ機能しません。代わりにE7-00ではCtrl+jもしくは’@’キー、N97 miniでは緑の発振キーを使用してみてください。改行キーの代替方法については、何か良いアイデアがありましたら教えて下さい。
[ 予測される不具合 ]
KKJConvのシフトモードが無いときにも大文字の英字が入力されるかも知れないです。また、記号シフトの場合は記号が入力されますが画面上、そのシフトモードであることが分からないと思います。
[ その他の変更点 ]
昨日のバージョンでは記号入力パネルは未対応でしたが、今回は通常の入力モードと同様にカーソルキーと改行キーを代替するキーで選択可能と思います。
ご意見、ご希望がありましたら、コメント、メール、呟き何でも構いませんのでお寄せください。
すでに香港でNokia E7-00を入手された方々がいらっしゃるようですので、とり急ぎKKJConvのE7-00対応を始めました。実機無しで手探りながら、まずはpreview第一版を公開いたします。E7-00を入手された方でお時間の有る方のテストをお願いいたします。
[ 導入 ]
以下のURLにデバイスからアクセスしKKJConvの所をクリックします。
http://www.nkozawa.com/kkjtest/
[ 使用方法 ]
E7-00のqwertyキーボードがMIDPにおいてナビキーとして使用されていること、またカーソルキーが効かないことを回避するためにシフトモードのひとつとしてNaviモードを設置しました。
– シフトキーを押す毎に右上のシフト表示が、表示なし->Shift->CAPS->Naviと変化します。
– カーソルの移動を行う時はNaviにしてA,W,D,Xのダイアモンド配列のキーで行います。
– 改行動作、変換中文字列の確定動作はCtrl+jもしくはNaviモードでSを押します。
[ 予測される不具合 ]
どうもデバイス本来のシフト状態にCAPSとか最初の文字だけシフトみたいのがあるようです。そのためKKJConvのシフト状態と相反して大文字あるいは小文字が入力されかも知れません。
同様の理由によりJが大文字に成っているときはCtrl+jが効かないかも知れません。
[ お願い ]
不具合、感想、使いやすくするためのアイデア等なんでも結構ですのでお知らせ下さい。連絡手段もコメント、メール、あるいはボソッと呟いて(Mentionの方が良いですね)もらう等、何でも結構です。
[ N97 mini ]
N97 miniにも、ナビキーの呪縛があるようですので、もしかすると有効かも知れません。シフトモードが分かりやすければ、通常のKKJConvでもナビキーモードと大文字の切り替えで何とか入力出来るようです 。その場合でも、おそらくA,W,S,D,Xの小文字入力が不可能と思います。E7対応のKKJConvであれば小文字が入力出来ると思います。
[ 今後 ]
今回のバージョンはE7-00モード決め打ちです。E7-00かどうかの自動判別とNaviモードを使用するかどうかの設定が出来るようにいたします。
春節前から上海の南京東路にあるノキア旗艦店にてNOKIA E7-00が展示されていました。先日、華南の同志とおもいっきりいじり倒してきましたので、その時の印象です(写真は、同志の撮影たものを無断使用 🙂 )。
まだ販売予定は世界数カ国ですので、今の時点で実機に触れるのは限られ場所と思います。という恵まれた状況にありながら自分の興味の中心にあることだけひたすらテストしていましたのでレビューになってないです。予めお断りしておきます。
[ キーボードはイケテます ] キーボードの開閉は、見たとおりで片手でディスプレイをスライドすれば気持よく開きます。この辺りはノキア、問題なしです。キーの押し込んだ時の感触が適度で携帯端末としては十分に優秀です。
[ サクサクとは言えないか ] 普段iPod Touchを使っているせいか画面の反応は少し鈍くも感じましたが、許容範囲でしょう。アプリケーションによってサクサクだったり鈍かったりしていたような気がします。徐々に良くなっていくことでしょう。
[ カメラは残念 ] Eシリーズでありながら写真の編集アプリが内蔵されていました。顔だけ変形させたりスタンプを押したりするお遊び系アプリです。その反面、搭載されているカメラはフルフォーカスと称する自動焦点の無いものです。このため、紙の書類を撮影しても文字が読めるほどに焦点は合いませんし、細かない部品を撮ろうにもマクロは効きません。最近のノキアはNシリーズのみがCarl Zeissブランドのオートフォーカス・カメラが搭載されていて、他のシリーズは全て自動焦点が有りません。ビジネス・ユーザーだってCarl Zeissじゃなくて良いので自動焦点なカメラが欲しいと思うのですけどね。
[ MIDPはどうやろ? ] さて、ここからが私の本題であるMIDP (Javaアプリ)関連の話になります。
Read the rest of this entry
以前から
中国の地図で使用されている経緯度とGPSで使用されている経緯度が異なることを書いてきました。このためGPSなどで位置決めを行うモバイルデバイスで現在地表示がズレてしまうなどということが起こっていました。いま中国で一番ホットなデバイスであるiPhoneの地図が最近になって、このズレが補正されるようになりました。ということで、現時点でのまとめを行ってみたいと思います。
まとめの時期: 2011年2月
[ ズレが無い、問題なし ]
< iOSデバイス(iPhone/iPad/iPod Touch)の標準地図アプリ >
iOS4.2.1ならば現在地表示はズレない。中国全土で問題ないのかどうかは不明、主な都市では問題ないようです。それ以前のバージョンはJBするとパッチアプリにて補正可能。また北京だけは以前から問題なかったです。
< Android >
私が試したAndroid 1.6のXperia X10では問題ありません。おそらく、全てのAndroidで問題ないのでしょう。
< Nokia S60向けのGoogle Mapアプリ >
2009年の始めくらいから正しく表示出来るようになりました。Latitudeも含まれていますので、これも問題なし。
< PC上でLatitudeの履歴表示 >
どのデバイスで取得したLatitudeの履歴も後から表示する分には正しい位置が表示されるようです。
[ ズレが生じる ]
< iOSデバイス >
– Latitudeアプリ。自分の位置は相変わらずズレています。他の中国国内に居る人の位置は正しいようです。
– 地図アプリにて経緯度を指定した場合。
– 経緯度指定がズレるのと同じことですがtwitterなどに付いた位置情報による地図表示。
< Nokia S60 >
TwitterクライアントであるGravityにはGeoタグから地図を表示する機能があります。これはズレてしまいます。Sports Trackerなどでも同様の現象になるとのことです。総じて経緯度していによる地図表示はズレるということでしょう。
< PC上でのGoogle Maps >
経緯度を指定して地図を表示するとズレた場所がひょうじされます。ただしGoogle Mapsの航空写真は、正しい位置が表示されます。
[ 補足的な事柄 ]
– ズレの正体は中国地図で使われている座標系がGPSのそれと異なるためです。これは中国に限ったことではなく日本にも日本測地系というものが存在し日本でのGPS黎明期には問題が生じることもあったようです。中国政府も中国独自の座標系を必ずしも使わなくても良いという表明をしているという噂も聞きましたので、将来的には面倒なことはなくなる可能性もあります。
– 一国二制度の中国です。Google Mapsの香港地図はズレが生じません。ここでも疑問が湧き上がります。香港の領土は深センと陸続きです。境目はどうなっているのでしょう。Google Mapsで境界線を調べると、無理矢理ツギハギされているのが分かります。また、深センから香港へ移動中にiPhoneの現在地表示がどうなるか実験された方がいらっしゃいます。詳しくは「Anheloの元”中国杭州市モバイル“で“留学”日記」を御覧ください。
KKJConvを端末にてネットワークから直接導入出来るようにセットアップいたしました。端末から以下のURLにアクセスして辞書サイズを選ぶだけで導入が始まります。
http://www.nkozawa.com/kkjconv/
だいぶ以前から考えてはいたのですが、なかなか腰が重くて、、、