Android Develop presentation on 19 Sep 2012.

865 views

Published on

Ehime IT study meeting at business assist shikoku held by Mr.Syuichi Ikeda.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
865
On SlideShare
0
From Embeds
0
Number of Embeds
114
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Android Develop presentation on 19 Sep 2012.

  1. 1. Androidアプリ開発について 愛媛IT勉強会資料「Androidアプリの開発における注意点」 2012年9月19日 有限会社ネットプラン松山 上田 和章 Twitter: @twikaz Android Play: netplan_jp
  2. 2. 自己紹介(キーワード)など 興味のあること 仕事以外では● WordPress ● 音楽● Android ● 自転車● Agile開発 ● たばこはすいません● C# ● お酒は控えめに● Linux● 仮想化 2
  3. 3. NpsViewer - アンドロイダー 3
  4. 4. npFixIt - 窓の杜 4
  5. 5. 第1章スマホの市場について一応、調べてみました。 5
  6. 6. 端末の種類国内主要3キャリア 6
  7. 7. 機種依存 カメラアプリ開発で機種依存に悩まされたとか 7
  8. 8. 個性のある端末楽しみの一つとして 8
  9. 9. 世界のスマートフォンシェア 世界のスマートフォンシェア (Wiki) 2012Q2 by Wikipedia Android iOS Symbian RIM Bada Microsoft その他Android iOS Symbian RIM Bada Microsoft その他 64.1% 18.8% 5.9% 5.2% 2.7% 2.7% 0.6% 9
  10. 10. 前のページでわかったことAndroidが 多い 10
  11. 11. メモ書きSymbian OS● ドコモ、ノキアなどが採用。● 従来のケータイ向けOSシェアNo.1RIM OS● Research In Motion (Canada)● BlackBerryBada OS● 바다● サムスン電子 11
  12. 12. 国内の利用者 国内のスマホ利用者 (Wiki) 2012 年 6 月 Android iOS (iPhone) Microsoft その他Android iOS (iPhone) Microsoft その他 64.1% 32.3% 3.2% 0.4% 12
  13. 13. 前のページでわかったことiPhoneも 多い 13
  14. 14. (参考)世界のタブレット出荷数 世界のタブレット出荷数 2012Q2 by Wiki 18000000 16000000 14000000 12000000 10000000 8000000 6000000 4000000 2000000 0 Android iOS その他 14
  15. 15. (参考)国内のタブレット出荷台数 国内のタブレット出荷台数 (Wiki) 2011/10 ~ 2012/03 1200000 1000000 800000 600000 400000 200000 0 Android iOS その他 15
  16. 16. 前のページでわかったこと iPadが 多い 16
  17. 17. ちなみに TMAndroid の搭載機器 には... 17
  18. 18. スマホやタブレット以外にも、 音楽プレーヤー カーナビ デジカメ テレビ などなど... 18
  19. 19. Android には ArduinoもiOSとは異なる あるよ~市場あります。 が ん? 19
  20. 20. いえいえ iOS にもiPodシリーズ 音楽プレーヤーiPad テレビ視聴iPhone ナビアプリ カメラ機能 20
  21. 21. スマホ系OS市場Android 複雑 Windows Phone iOS なBada OS 様相 RIM OS 21
  22. 22. 「iPhone」でトレンドを調べると 22
  23. 23. トレンド(OS)のチャートを見てSymbianがあり ● 従来のNo.1シェアiPhoneが出てきて ● デザイン、機能、ブランド力そしてAndroid ● オープンソースのパワー 23
  24. 24. 第2章Androidの開発環境 24
  25. 25. さて、Android開発環境 他にも...? 25
  26. 26. 開発環境の比較 開発環境 動作環境 言語 ターゲット 価格Eclipse Win, Mac, Linux Java Android 無償Titanium Mobile Win, Mac, Linux JavaScript Android, iOS 無償・有償 Android, iOS, Win, Mac, Linux HTML, CSS,PhoneGap Windows ※Eclipse 無償 JavaScript Phone, ... Android, iOS,Corona Win, Mac Lua Kindle Fire, アプリ公開は 有償 nook HTML5, CSS3, Android, iOS, 無償およびSencha Win, Mac, Linux JavaScript Kindle Fire, ... 有償サポート ・・・ ・・・ ・・・ ・・・ ・・・ 26
  27. 27. (参考)App Inventorhttp://appinventor.mit.edu/explore/ 27
  28. 28. (参考)gabuchanの日記http://d.hatena.ne.jp/gabuchan/20120905 28
  29. 29. 第3章 アプリ開発とOSのバージョン 29
  30. 30. Androidのバージョン デベロッパーコンソール 「ツール」カテゴリの トップ10 30
  31. 31. (参考)Antomatic Task Killer S.Tachibanaさん作 ANDROID要件: 1.6以上 31
  32. 32. 各バージョンへの対応● 幅広く対応 1.5, 1.6, ... , 2.3.x, 4.x● 主要バージョンに絞る 2.2, 2.3.x, ... , 4.x 32
  33. 33. メリット・デメリット● メリット 多くの利用者に使ってもらえる(信頼、収益) ノウハウの蓄積 公開してスキル証明(資産)● デメリット ターゲット毎に処理を分岐するなど 開発のコストがかかる メンテナンスの手間 33
  34. 34. パッケージのリリースできるだけ単一のAPKでサポートするようにアプリケーションを開発することを推奨します。https://sites.google.com/site/androiddevelopersclub/docs/multiple-apk-support より 34
  35. 35. 少し言い換えると できるだけ1個のパッケージ(プロジェクト)で 対象とするAPIレベルに 対応しましょう。 35
  36. 36. もう少し言い換えると ひとつのアプリケーションを複数のパッケージに分けてしまうと後のメンテナンスが大変ですよ。 36
  37. 37. とはいえ、 複数のAPKに分けたい 場合も あるでしょう。 37
  38. 38. マルチプル(複数) APK サポート 同一のパッケージで、複数のAPKを公開できる。 ● 同じパッケージ名をつけ、同じ認証キーで署名 例)com.example.android.myapp ● 各々異なったバージョンコードをつける、などhttps://sites.google.com/site/androiddevelopersclub/docs/multiple-apk-support より 38
  39. 39. 第4章プログラミングスタイルと APIレベルへの対応 39
  40. 40. Fragment機能 昨年リリースの Android3.0 (Honeycomb)よりFragment という機能が 追加されました。 40
  41. 41. Fragmentの例 41
  42. 42. ちょっとわかりにくい ご遠慮なくどうぞ 42
  43. 43. Fragment で便利になること メニュー 詳細記事Handset 2画面 メニュー 詳細記事 1画面 Tablet 43
  44. 44. Activityで作るとAct-A + Lay-A Act-B + Lay-B ロジック Act-A メニュー表示 Act-B 詳細表示 Act-C メニュー表示と 詳細表示 Act-C + Lay-C レイアウト Lay-A メニュー用 Lay-B 詳細用 Lay-C メニューと詳細用 レイアウトの種類が増えると、ロジックが煩雑になってしまう。 44
  45. 45. Fragmentで作るとAct-A + Fra-A Act-B + Fra-B ロジック Act-A (Single)Fra-Aの起動 (Dual)Fra-A, Fra-Bの 起動 Act-B Fra-Bの起動 Fra-A メニュー表示 Act-A + Fra-A + Fra-B Fra-B 詳細表示 レイアウト Lay-A メニュー用 Lay-B 詳細用(Handset) Lay-C 詳細用(Tablet) レイアウトの種類が増えても、ロジック(Fra)は共通で使える。 45
  46. 46. なんだか余計に複雑? 46
  47. 47. 表現を変えてみます。 カプセル化 メニューの表示処理 詳細の表示処理 47
  48. 48. 部品として再利用「メニュー表示」と「詳細表示」をそれぞれ部品にすることで様々な解像度(レイアウト)の端末に対して簡単に再利用することができます。 48
  49. 49. マルチスクリーンへの対応例 49
  50. 50. スマホ(API-2.2、Froyo)ニュースのタイトルをタップ Activityが開く右上のカテゴリをタップ Dialogが開く 50
  51. 51. タブレット(API-3.2, Honeycomb) タイトル、カテゴリ、選択記事すべて1画面で表示 51
  52. 52. ところで Fragment って 52
  53. 53. Android 3.0以降じゃないと...??Androidバージョン API Level2.2(Froyo) = 82.3.x(GINGERBREAD) = 9, 103.x(Honeycomb) = 11, 12, 134.0.x(ICS) = 14, 15 53
  54. 54. そんなあなたに、サポートパッケージ!! 54
  55. 55. サポートパッケージ以前のOSバージョンを新しいAPIに対応させることが可能。【注意】あらゆるAPIに対応しているわけではない。 55
  56. 56. 追加の仕方(Support Package) パッケージの右クリックから、 56
  57. 57. サポートパッケージのインストール 57
  58. 58. 追加されました。 58
  59. 59. APIレベルで非対応でも サポートパッケージで対応できる場合があります。 ※万能ではありません。 59
  60. 60. 最終章その他に、お伝えしたいこと 60
  61. 61. Android TM  ブランディングAndroid Robot は、ライセンス規定の元に、自由に編集して使うことができます。http://developer.android.com/license.html#attribution Androidロゴは 勝手に使ってはいけません。 61
  62. 62. 情報源● ウェブサイト ● 書籍 – Android Developers ● 各種セミナー – TechBooster ● 勉強会● Twitter ● もくもく会● Facebook● Google+ ● 瀬戸デ部● Google Groups● LinkedIn● Forkwell 62
  63. 63. ご案内● CVehime(勉強会) ウェブサイト、HTML5, CSS3, JavaScript● GDGshikoku(コミュニティ、勉強会) 四国地方のGoogle Developer Group● Agile459(勉強会) アジャイルサムライの読書会など 63
  64. 64. 以上です。ご清聴ありがとうございました。 m(. .)m 64

×