日本Androidの会10月定例に行ってきた

海外のAndroid状況

  • @tao_gakuさん タオソフトウェア株式会社 代表取締役 谷口岳さん
  • 海外では多くの端末が出ている
  • 日本ではHT-03A(docomo)のみ
  • 2009/8 G-1,samsung galaxy,ht-03a ..の4機種
  • 9,10月でAndroid端末が一気に増える
    • US 11月の第4週-元旦まで ホリデーシーズン
    • 小売売上高の年間50%程度ホリデーシーズン
  • アメリカのキャリアが出す
    • Verizon Wireless
      • Droid(tao)
    • AT & T Mobility(iPhone)
    • Sprint Nextel
      • Hero,Moment
    • T-Mobile USA(Android)
      • Dream,Magic,Behold II ,Cliq
  • DoCoMo Andorid 1.6 アップデート!?

Androidの画面描画機構をチューニングする!

SurfaceFlingerとは
  • 画面アプリソフトウェアの中心
android app

|

Dalvik(JVM)

|

SurfaceFlinger

|

描画エンジン(OpenGL等)

|

Kernel FlameBuffer
  • 各アプリケーションに対し描画領域を割り当てる
SurfaceFlingerチューニング
  • 色深度
    • Androidは16bitカラーのみをサポート
    • 昨今は計帯電はをはじめ32bitカラーが要求されることが多いがその要求にこたえることができない
    • 16bit -> 32bit化させる
    • SurfaceFlinger -> FrameBufferの設定を修正する
      • FBIOGET_VSCRIININFOでFrameBufferから画面情報を取得
      • FBIOPUT_VSCRIININFOでFrameBufferを16bitに設定している<=ここを設定(PIXEL_FORMAT_BGRA_8888)
  • 描画速度の問題
    • 32bitカラー化により描画性能が1/10に下がってしまった
  • 描画速度の改善
    • Copybitライブラリ
      • ハードウェアアクセラレータを利用した2Dの描画エンジンライブラリ
    • OpenGLの汎用描画関数では一ピクセル毎に条件分岐をしているその部分を削ったら 5fps -> 60-70fpsに性能向上!
  • 1アプリケーションあたりのメモリ
    • 描画領域は最大で8MB
      • テレビのFullHDだと軽く超えてしまう
      • 起動してもメモリ確保ができずに起動失敗
    • 描画領域バッファを8MB以上にする
NativeApplicationでの問題
  • C/C++で記述したLinuxNativeアプリケーションのこと

スポットメッセージの紹介(ADC2登録アプリ)

  • 株式会社バンプール
  • 有川さん
  • URIで位置メッセージを仕掛けて、受信側がその場所に到達したら通知されるアプリ
  • URIなのでtwitterGMail等あらゆる方法で共有ができる
  • 苦労ポイント
    • Animation GIFに対応していない
    • LocationManagerのProxymilytiAlertが頻度が設定できない等つかいものにならない
    • SIMカードが刺さってないと位置情報の検知が難しい
    • 1.1->1.5になって制度が向上
情報
  • 11/30に Android Bazzarl Fall代々木青少年センター
  • Android有料アプリがダウンロードできないのはGoogle内部でいえない諸事情が、

ある日突然ダウンロードできるようになるので、待たないでどんどん出しちゃってください