デブサミ関西聞いてきたログその3

「実はユーザ評価下がってる!スマフォアプリ開発の罠」 ~組込みの観点からの解決方法、省電力、UIX~

前半

主に活動の紹介

消費電力

不要なハードウェアは使わない

  • バックライト
  • 液晶
  • メモリ
  • DSP (Digital signal processor)
  • etc..(多すぎてメモれなかった。。)
  • ARO(Application resource optimizer) という androidのツールがいけてるらしい

モデムの状態遷移

三種類の状態があり、それぞれ(基地局と同期行うため?)時間がかかる。
高速通信 <= 5sec => 低速通信 <= 12sec => 無通信

IP通信するなら高速通信でする必要があるが上記の遷移をしてしまうため余分に通信してしまい、無駄に電力を使ってしまうらしい。
IP通信するなら出来るだけまとめて行う。

iPhoneにはメモリにプールしてまとめて通信するAPIがあるらしい。

Alarm manager

せっかくアラームマネージャで設定して、ユーザー駆動のEventで一斉に送信されたりして高負荷状態になったりするらしい。

ファイルシステム

フラッシュのブロックは64kb単位で行われる。
最大書き込み数があるので、出来るだけいろいろな所に書き込むようにするらしい。
フラッシュはbitを 0 => 1 にできない。
そのため、一旦1ブロック(64kb)を1にしてからそっから書く。それが遅いフラッシュだと300msec〜くらいかかることもあるらしい。
ファイル操作はUser thread じゃないthread でやれ!