Smartphone workshop kansai #9

879 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
879
On SlideShare
0
From Embeds
0
Number of Embeds
28
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Smartphone workshop kansai #9

  1. 1. WindowsMobileでのTwitterの はじめかた。~ tmytの場合 スマートフォン勉強会@関西 #9 tmyt
  2. 2. かるく自己紹介  はじめましての方、はじめまして。  tmytっていいます。  大学院生になりました。  スマートフォンはWM派です。  あと、男です。  今日の格好は@Hisumiにやらされました。
  3. 3. おしながき  Azureaの紹介  Twitterのはじめかた。  Twitterのはじめかた – Phase.2  ちょっぴり開発者よりなおはなし  WorldViewしてみたよ!
  4. 4. Azureaってなんだろう  拙作のTwitterクライアント。  WindowsMobileで動きます。  僕が快適に使えるクライア ントを目指しました。  とある方面にも好評なよう です。
  5. 5. ついったー楽しいですね  ついったー楽しいです  お外にいるときでもわりとついったーし ちゃいますよね  Twitterドラマ(笑)も始まって絶好調ですね
  6. 6. ついったーのはじめかた ~ 普通の人の場合 ~  まずTwitter (http://twitter.com/)へアクセス して  今すぐ登録 ボタンをおして  フォームを記入して  アカウントを作成 押せば登録完了!  これであなたもついったー廃人!
  7. 7. いや、 そんなことはどうでもいいんだ
  8. 8. ついったーのはじめかた ~ tmytの場合 ~  とりあえず登録する。  端末を買う  とりあえずAPI仕様書を読む  とりあえずクライアントを書く  なんてかいてき!
  9. 9. とりあえず端末購入して悩む  i-mate 8502という端末がありまし た。  なんと製造していた会社が倒産し ました。  すると、なんということでしょう。 5,6万する端末がなんと驚き1万3千 円。  あれ、手元になにか増えてる。
  10. 10. 端末を購入した結果  ストレートQWERTY最高!  QVGAせまい!  EbIRCでTIGもいいけどもっと快適につ いったーしたい!  アプリ書けばいいじゃん。
  11. 11. 結果Azureaを作りました。  TIGでリプライを追う拡張も作ったけど入 力めんどい。  もっと快適にリプライおいたい!  そうだツリービューで追えたらかっこい いじゃん!  そんなアプリないのかな。  (約30分後)いいや作ればいいじゃん!
  12. 12. UIの必要条件としたもの  非選択項目は1行で表示される。  全文は項目を選択することで表示する  項目は子アイテムを持つことができる  QWERTYで快適に操作できる  それなりにタッチスクリーンでも使いや すければいいや。
  13. 13. 必要条件を満たすコントロール  標準コントロールで使えそうなもの  LISTBOX  SysListview32  SysTreeview32  さてどれなら必要条件を満たすコント ロールを作れるでしょうか
  14. 14. では検討してみましょう。
  15. 15. LISTBOXでやってみる  項目の高さをフレキシブルに変更できな い。  変更可能なのは項目が追加されたタイミング のみ。  結論:つかいものにならん。
  16. 16. SysListview32でやってみる。  項目の高さをフレキシブルに変更できな い。  全部同じ高さ or それぞれ違う高さを設定でき る。  しかしどちらも1回しか変更できない。  ツリービュー風味のことはVisualStudioで 実装されているがあれは気合いらしい。  結論:つかいものにならん。
  17. 17. SysTreeview32でやってみる。  項目の高さをフレキシブルに変更できな い。  リストビューっぽくするにはほとんど全 部オーナードローとかしないといけなさ そう。  結論:つかいものにならん。
  18. 18. 標準がこのざまじゃ… しかたないですね…
  19. 19. リストビューを作ってみよう!  リストビューを作るといってもそんなに 難しいことはありません。  どこかに項目情報を持っておいて表示さ せるだけです。  std::vector<ITEMINFORM>  std::deque<ITEMINFORM>  etc…  あとはコントロールの制御を書いて、ほ らできあがり!
  20. 20. リストビューができました  やっぱ全部自作のコントロールはかっこ いいですね!  表示がかっこよくなったら次に問題にな ることがありますね。  挙動  操作した時のみため  etc…  いろいろありますが…
  21. 21. それは 速度 ですね
  22. 22. 描画を高速にしましょう  Azureaが高速化のために行っているのは次 のようなこと。  計算はできる限りキャッシュする  とくに文字を描画した時の幅とか高さとか  必要な領域以外は描画しない  スクロールする際にはビットマップを保持し てスクロールするAPIを利用する  ScrollWindowEx  ScrollDC
  23. 23. 速度は問題ない。次は?  パンスクロールを採用したい。  どうする?  気合で実装する  OSにおまかせする  OEM実装のものにおまかせする。  さてどうしよう。
  24. 24. OEM実装のものにおまかせ  OEM実装におまかせ。 つまり端末メーカの独自実装におまかせ。  一番楽。  何もしないで大丈夫。  HTCの場合だとTouchFloの世代からは大丈 夫。  スクロールバーがあるとドライバレベル でフックしてスクロールしてくれる。
  25. 25. OEM実装におまかせ(2)  FTouchSLというアプリケーションがあり ます。  こいつもHTCのキネティックスクロールみ たいなことができます。  インストールするだけ。  らくちん。
  26. 26. OSにおまかせ  必要条件  WM6.5 lator  Native Application  WM6.5 DTK  コントロールにスクロールバーがあること  TKSetWindowAutoGesture を呼ぶ  あとはコントロールをはじくとスクロー ルできます。  らくちんですね。
  27. 27. じゃぁ気合で実装するには?  マウスメッセージをハンドルする。  WM_LBUTTONDOWN  WM_LBUTTONUP  WM_MOUSEMOVE  WM_MOUSEMOVEで前回との変位量をも とにコントロールをスクロールする。  文字に起こすとこれだけ。  意外とらくちん。
  28. 28. でも慣性が…  指を離した後もしばらくスクロールした い。どうするか。  WM_MOUSEMOVEで移動量と時間から速 度と加速度を求める。  求めた値を保存しておいて WM_LBUTTONUPが来た時にタイマーを セット。  あとはタイマーの実行ごとに保存した値 をもとにスクロールさせるだけ。  ね?かんたんでしょ?
  29. 29. もっとListViewっぽくしたい。  WM6.5からシステムコントロールのデザ インを変更できるようになりました。  リストビューのスタイル情報はレジスト リにあります。  HKEY_CURRENT_USER¥Software¥Microsoft¥To day¥ListView  ここに画像のパスとかパディング情報とかが あるので気合でがんばりましょう。  UxThemeも実装されているようです?(未 確認)
  30. 30. ネイティブコードでいろいろ頑張ると... こういうこともできます。 DEMO
  31. 31. MARKETPLACEで海外進出!! WORLDVIEWで海外へ!
  32. 32. WorldViewとはなんぞや  Marketplace for Windows Phoneでアプリ ケーションを翻訳せずに別の国で出品す るもの  一切翻訳できません!  もちろん、アプリケーションの紹介も翻 訳できません!  でも英語ができればそれでいいんです
  33. 33. とりあえずWorldViewしてみよう
  34. 34. WorldViewする上での注意点  アプリケーションの紹介ページは翻訳さ れません!  つまり日本語版をWorldViewすると日本以 外では化け化けで読めません!  en-USを追加の地域で申請してから、それ をWorldViewするといいとおもいます
  35. 35. WorldViewするとこんなにいいことが!  日本とかいうしょーもない規模のマーケット から世界のすばらしいマーケットに進出でき ます!  日本の4倍~6倍のダウンロードは見込めるん じゃないでしょうか  英語もしくはそれ以外の言語でメールとか飛 んできます!怖い!  自分が読み書きできない言語でもロケール ファイルを書いてくれる人とかいることがあ ります!  なんてすばらしいんでしょう!
  36. 36. みなさんWORLDVIEWで世界へ!
  37. 37. ご清聴ありがとうございました

×