ざっとまとめてみました。
http://android-developers.blogspot.com/2010/10/improving-app-quality.html
1. Listen to your users
・ Android Market にはユーザーとデベロッパーの双方向のコミュニケーション方法が提供されていないので、自分でサポートを用意すべき。例えば、 Google Group, Zoho Discussions, getsatisfaction.com, uservoice.com などのすぐれたツールを使うことができる。もし、このようなツールを使ってサポートを始めた場合、ここへのリンクを Android Market やアプリ内に入れること。
・ public beta や trusted tester program をする方法もある。website に apk を置いて、そのページに認証をいれるなどすればいい。
2. Improve stability and eliminate bugs
・ Monkey テストを行う UI/Application Exerciser Monkey (aka Monkey)
・ error reporting feature が Android 2.2 から提供されている。デベロッパーは Android Market developer console から確認できる。
・ 外部のバグや、機能追加のリクエストなどをトラックできるようにする。もし、プロジェクトがオープンソースなら、 Google Code や GitHub などの repository hosting sites を使えば、これらの機能を利用することができる。
3. Improve UI Responsiveness
・ 遅い UI だと、ユーザーは離れて行ってしまう。(speed matters として、研究で示されている)
・ 時間がかかる処理をアプリケーションの main thread からはずず in Google I/O 2010 talk, Writing Zippy Android Apps
・ UI のパフォーマンスを改善するには、レイアウトの複雑さを最小化する。 hierarchyviewer でレイアウトの階層をチェックし、5階層以上あるなら、もっと単純化する必要がある。
・ View objects は約 1 ~ 2 KB のメモリを消費する in Google I/O talk, World of ListView by Romain Guy。よって深い階層は頻繁な VM garbage collection の元凶になり、main (UI) thread をブロックしてしまう。
・ traceview や ddms を使って VM memory allocations をモニターする
・ Designing for Performance
・ Designing for Responsiveness
4. Improve usability
・ 実際のユーザーに聞くのが一番!
・ 家族や友人に試してもらう。操作に戸惑ったら改善の余地あり
・ user interface patterns the Android UI team discussed at Google I/O
・現在の Android アプリで流行ってる悪いインターフェースは、「小さいタップターゲット」と「小さすぎるフォントサイズ」
・ 視認性、可読性を最適化し、情報の密度のバランスに気をつける
・ Analytics を実装して、使用方法のログをみる
・あまり使われない機能は options menu に移したり、完全になくす
・ よく使う機能やセクションや UI は、すぐに見えて簡単にアクセスできるようにする
・ usability は interface design, cognitive science, and other disciplines と密に関連した題材である。もし crash-course を探しているなら、Donald Norman’s The Design of Everyday Things がオススメ
5. Improve appearance and aesthetics
・ モバイルと Android に精通していて、 interaction と visual design の能力をもった人を見つけることはなかなかできない。デザイナのための jobs.smashingmagazine.com や social connection や Twitter や LinkdIn を活用する。
・ 専任の UIデザイナーが必要ない場合は、自分で改善する。Adobe Photoshop や Adobe Fireworks や他の raster image editing tool を使えるようになる。これらのアプリ内の技術をマスターするのは時間がかかるが、インターフェイスのデザインを磨き上げることができるようになる。
・ framework UI assets and layouts を勉強したり、 resources documentation を読んで resources framework をマスターする
・ 9-patches や resource directory qualifiers などの Android 特有のテクニックは柔軟で美しい UI を構築する上で重要
・ Android UI Design Tips slide
6. Deliver the right set of features
・ アプリにとって正しい機能を揃えることが重要
・ 多くの情報を提供し過ぎることは、十分提供しないときよりもフラストレーションがたまる
・ やっぱりユーザーに聞くのが一番!
・ 機能のリクエストに耳を傾けて、よく考えて選択すること。リクエスト全部を実装する必要はない
7. Integrate with the system and third-party apps
・ いいユーザーエクスペリエンスを提供するのに最適な方法は、オペレーティングシステムと緊密に統合すること。 app widgets, live folders, global search integration, Quick Contacts badges とか
・ いくつかのアプリの種類については、app widgets のような基本的な機能は当然のこと。ないとユーザーが離れてしまう
・ いくつかのアプリは Android 2.0 以降で、新しい contacts、アカウント、同期API を使って、OSと緊密に統合可能。 SampleSyncAdapter (bundled with the SDK samples) and JumpNotr がこれらの API のサンプル
・ Third-party と integrate する。例えば、カメラアプリなら、ユーザーが Photoshop Express をインストールしていれば、保存する前にこのアプリで編集できるようにすることが可能。詳しい方法は Can I Use this Intent?
・ Designing for seamlessness
8. Pay attention to details...
・ icon quality and consistency
・ crisp and pixel-perfect at all resolutions
・ icon guidelines
・ Android Asset Studio tool
0 件のコメント:
コメントを投稿