kumama go言語とかgolangとかGAEとかネットサービスとかその他色々・・・

9Feb/110

Androidは複数形

Androidのアップグレード問題に関してひとこと」を読んで。

直感的に感じているのは各端末毎のスペックがばらばらで、端末毎のおもてなしを最適化するのが困難な上に、1端末種類のパイが少ないから最適化にかけた情熱が見合わないと言うこと。端末の画面サイズの違いやタッチパネルの感度・感覚の違いが低いレイヤで吸収できてないから、使い心地を作り込む作業が難しい。直感的操作がメインのスマホなら当然のこと。直感的操作・使い心地という抽象的な指標だから抽象的にしかかけないので伝わるかどうか微妙だけど。

まー、iOSも複数端末有るけどfewで収まる範囲。Androidはmany。あとHWの変更サイクルが今のところ推測可能かつ緩やかかつUIというかUXに関してはある程度統一されてるのでiOSの方が安心と言うことか。

おいらはこの記事「The Problem with Inconsistent Button Layouts on Android」読んでAndroidは難しいなーと思いました。

Filed under: android Continue reading
9Jan/100

Android/eclairのBeagleBoardで無線LAN

まぁ、その3w

initがuevent見てFirmwareのロードしてくれるはずなんだけど、initにデバック入れてみて見てもuevent拾ってなさげ。
kernelにFirm抱き合わせにして回避。

基本、有線LANでnsfrootしてるので無線LANは必要ないんだけど、
ConnectionManager?がネットにつながってるとみなしてくれず。
ブラウザはOKだけどダウンロードが動かん。

OpenWnnも動かなかったり Eclairは色々まだまだ前途多難ぽい

Filed under: android No Comments
9Jan/100

Android/eclairのWebSocketsは未完

未完ねた2本目。
というか、年末からの色々2本目。

beagle-board有るから動かして試せば良いやぁって思ってたけど、
動かない動かない(WebSockets以外が)ってことでソースを追う。

現状、Chromeでしか動かないんだけどその実装は以下っぽい。
http://src.chromium.org/viewvc/chrome/trunk/src/net/websockets/

ってWebKitじゃないのか・・・と思いつつもwebkitのwebcoreのsvnにコードはある
http://trac.webkit.org/browser/trunk/WebCore/websockets

一方、eclairのwebkitはというとこれ。
http://android.git.kernel.org/?p=platform/external/webkit.git;a=tree;f=WebCore/websockets

  79 bool WebSocket::send(const String&, ExceptionCode& ec)
80 {
81 if (m_state != OPEN) {
82 ec = INVALID_STATE_ERR;
83 return false;
84 }
85 // FIXME: send message on WebSocketChannel.
86 return false;
87 }

orz
使える分けね~。

r47029辺りでsyncしてそれっきりぽい。

v8入ってコードもあるから動くかと思った…。コードの中見なかったのが敗因。

強引にWebKit入れ替えようかとも思ったものの、Nexsus OneちゅうかAndroid 2.1が公開されてサポート状況見てからにしよう。
Nexsus OneもブラウザのUserAgent見てるとAppleWebKit/530.17ベース(Safari 4.0ぐらい?)で変わってないぽくって期待は出来ないのだが…

Filed under: android No Comments
9Jan/100

beagleboard-eclairでマウス(未完

年末ぐらいからの色々。その1。

WebSocket が Android 2.0 (eclair) で使えたら良いなぁと思いつつ、
BeagleBoardでeclair動かしてみてたものの。
マウスが標準のAndroidだと未サポートってことで、ちょっと作りかけ。

色々なAndroidの実装というかリポジトリ覗いたんだけど、Android側に手を入れてる実装が多い。
Android側の更新が頻繁なことを考えるとKernel側でマウスを仮想タッチパネルに仕立て上げるほうが
良さそうっていう発想の元色々。

はじめはフィルタドライバで実装してたんだけど、Androidが拾ってくれない。
/dev/input/mouse とかは Android の EventHub は見てなくて/dev/input/event を見てる。

ということで evdev.c で EV_REL を EV_ABS にごまかしたりする仮想デバイスぽいドライバを。
カーソルの描画はOVL2使えば良いやって思ってたけど、微妙に失敗してるっぽい。
っていうか、androidがfbのダブルバッファリングに使ってるのか?
fbconかもしれん…けど見切れてない。

あと、画面の電源が入ってないときはタッチパネルのイベントを無視するっていうコードが、
Android側に入っていてそこだけは面倒でAndroid側修正した。

frameworks/base/services/java/com/android/server/KeyInputQueue.java:502
                        if (ev.type == RawInputEvent.EV_ABS) {
                            send = true;
                        }

とりあえずな現状のkernelパッチは続きに。

Filed under: android Continue reading
27Dec/090

来年はタブレットの年(たぶん)

既に始まっているといえば始まってるんだけど。

BIGLOBEがAndroid端末販売へ、アプリのマーケットプレイスも開設
Camangi、Android搭載の7型タブレット端末「WebStation」
”Win/Linux/Android”トリプルブート対応『Smart V7』
幻のタブレット「CrunchPad」、新名称「JooJoo」で発売へ
キーボードが外せるタッチスクリーン式ノートPC「Touch Book」
後、噂ながら、
Appleが1月にイベント開催 Macタブレット発表か?
などなど。

個人的にはリビングでごろごろテレビ見たりしてるときにちょっとネットしたいけどPC立ち上げるのは面倒(というかPCは立ち上がってるけどPC触るのが面倒)。とかいうときに、まともな(HTML5がサポートされてる)ブラウザが動くガジェットというかデバイスが有ればいいなぁと思ってて。(
BeagleBoardにHDMIでって思ってるけどEclairでマウスサポートをごにょごにょ中で実現に至ってなかったり。今はちょっとkernlいじってnfsrootにしてごにょごにょ中だけどBlog書いてる裏でCalendarSyncAdapterがNullPointerExceptionで落ちてますw)イメージ的にはタブレットPCというよりもどちらかというと大き目のデジタル時計とかフォトフレームの進化版?というか、そんな感じ。基本つけっぱなしで能動的にブラウザで検索したりっていうのも有りだし受動的にウイジットで天気予報とかRSSとかTwitterのフィード表示させたりとかもあり。

一般的にも携帯とPCを埋めるデバイスが有れば売れるはず。って今までもそういうところを狙ったデバイスは数多く有ったけどそんなに流行ってなかった。のは多分ブラウザが今一だったりできる事と比較して高価だったから。だけどandroidとARMでかなり状況は変わってくる。PCが3~4万で買える時代だけど、ARMベースで2万切る市場での争いになる気がする。

現在のメディアプレイヤーがAndroidでネットと融合っていうか。

後、大きな要因はNVIDIAのTegra。
NVIDIA Tegraベースのネットブック elan、重さ836gでHD動画10時間再生
NVIDIA Tegra
microsoftがXPのタブレットを仕掛けた時とは状況が違う。

アップルのタブレットも含め物欲との戦いになりそうな予感。Android+HDMIってとことでは”Android搭載の携帯ゲーム機「ODROID」”も良いなぁと思うんだけど。さてはて。

そういうデバイス向けの何かをWebSocket使って作れたら良いなぁと思ったり。goでarmで動くバイナリも作ってみたいし。

Filed under: android No Comments