0
はじめての Android これであなたも今すぐ始められる!
目次 <ul><li>Android概要
開発環境の構築 </li><ul><li>開発者登録 </li></ul><li>Androidプログラミング
TODOアプリケーション </li><ul><li>ソースを見てみる </li></ul><li>公開するには </li></ul>
Android概要
概要 <ul><li>特徴 </li><ul><li>携帯、ネット端末のプラットフォーム
オープンソース </li><ul><li>Linux、libc、SQLite、Open GL ES、etc... </li></ul><li>Java SE(の拡張) </li><ul><li>Dalvik(ダルビック) JVM </li></...
概要 <ul><li>特徴 </li><ul><li>有料コンテンツ </li><ul><li>2009年10月より日本でも利用可能に
売上 </li><ul><li>3割キャリア
7割開発者 </li></ul><li>利用者はGoogle Checkoutを使って購入 </li></ul></ul></ul>
概要Androidのなかみ アプリケーション アプリケーションフレームワーク ライブラリ Linux Android ランタイム 初めての Android ( 初版 ) P.12 より ディスプレイ ドライバ Bluetooth ドライバ カメ...
概要 <ul><li>現在の主要なバージョン </li><ul><li>1.5
1.6 (HT-03A, Xperia)
2.1 (Nexus One) </li></ul><li>日本のAndroid端末 </li></ul>Xperia (2010 年 4 月  発売予定 ) Version 1.6 HT-03A (2009 年 6 月 発売 ) Versio...
<ul>開発環境の構築 </ul>
開発の準備 <ul><li>必要なもの </li><ul><li>Android SDK(最初にインストール)
Eclipse
Android Development Tools (ADT) ( プラグイン)
実機 ( なくても大丈夫)
または、 Dev Phone </li><ul><li>開発者サイトから購入可
開発者登録が必要 </li></ul></ul></ul>
開発の準備 <ul><li>SDK </li><ul><li>http://developer.android.com/intl/ja/sdk/index.html
android-sdk_r04-windows.zip </li></ul><li>ZIP ファイル解凍後適当なディレクトリへ配置
SDK Setup.exe を実行 </li></ul>
開発の準備 <ul><li>ここで、httpsでアクセスできなというエラーが出るとき </li></ul>
開発の準備 <ul><li>ホームディレクトリの.androidディレクトリに </li><ul><li>androidtool.cfgを作成
以下の一行を追加して、再度SDK Setup.exeを実行 </li></ul></ul>sdkman.force.http=true ※ 詳しくは、 <ul><ul><ul><li>http://d.hatena.ne.jp/hiro_nem...
開発の準備 <ul><li>今回入れるのは、以下の3つ </li><ul><li>SDK Platform Android 1.6 API
Google APIs
Usb Driver package </li></ul></ul>
開発の準備 <ul><li>Eclipseプラグイン(ADT) </li><ul><ul><li>https://dl-ssl.google.com/android/eclipse/ </li></ul></ul></ul>
開発の準備 <ul><li>ADTインストール後 </li><ul><li>Windows > Preferences  > Android </li><ul><li>Android SDKのインストールパスを入れて完了 </li></ul><...
開発者登録
開発者登録 <ul><li>開発者登録するとできること </li><ul><li>Androidマーケットでアプリを公開できる
有料アプリも公開できる
Android Dev Phoneの購入 </li></ul><li>登録するには </li><ul><li>開発者登録には $25 必要
支払いには Google Checkout が必要 </li><ul><li>クレジットカードによる決済 </li></ul></ul></ul>
開発者登録の流れ <ul><li>メールアドレス、電話番号等の入力 </li></ul>
開発者登録の流れ <ul><li>支払い(Google Checkout) </li></ul>
開発者登録の流れ <ul><li>クレジットカード登録 </li></ul>
開発者登録の流れ <ul><li>支払い完了 </li></ul>
開発者登録の流れ <ul><li>開発者登録確認 </li></ul>
開発者登録の流れ <ul><li>開発者登録完了 </li></ul>
<ul>Android プログラミング </ul>
開発の基礎 <ul><li>アプリケーションは個別の Linux プロセス
プロセスごとに専用 VM
アプリケーションごとに個別の Linux ユーザ ID
コンポーネント </li><ul><li>アクティビティ
サービス
Upcoming SlideShare
Loading in...5
×

はじめてのAndroid

7,807

Published on

はじめてのAndroidということで、はじめてAndroidを勉強する方向けに行った勉強会で使用した資料です。

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

No Downloads
Views
Total Views
7,807
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
29
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Transcript of "はじめてのAndroid"

  1. 1. はじめての Android これであなたも今すぐ始められる!
  2. 2. 目次 <ul><li>Android概要
  3. 3. 開発環境の構築 </li><ul><li>開発者登録 </li></ul><li>Androidプログラミング
  4. 4. TODOアプリケーション </li><ul><li>ソースを見てみる </li></ul><li>公開するには </li></ul>
  5. 5. Android概要
  6. 6. 概要 <ul><li>特徴 </li><ul><li>携帯、ネット端末のプラットフォーム
  7. 7. オープンソース </li><ul><li>Linux、libc、SQLite、Open GL ES、etc... </li></ul><li>Java SE(の拡張) </li><ul><li>Dalvik(ダルビック) JVM </li></ul></ul></ul>
  8. 8. 概要 <ul><li>特徴 </li><ul><li>有料コンテンツ </li><ul><li>2009年10月より日本でも利用可能に
  9. 9. 売上 </li><ul><li>3割キャリア
  10. 10. 7割開発者 </li></ul><li>利用者はGoogle Checkoutを使って購入 </li></ul></ul></ul>
  11. 11. 概要Androidのなかみ アプリケーション アプリケーションフレームワーク ライブラリ Linux Android ランタイム 初めての Android ( 初版 ) P.12 より ディスプレイ ドライバ Bluetooth ドライバ カメラ ドライバ フラッシュメモリ ドライバ バインダ ドライバ キーバッド ドライバ キーバッド ドライバ USB ドライバ WiFi ドライバ オーディオ ドライバ 電源管理 サーフェス マネージャ メディア フレームワーク SQLite Open GL ES FreeType Webkit SGL SSL libc アクティビティ マネージャ ウィンドウ マネージャ コンテンツ プロバイダ ビューシステム 通知マネージャ キーバッド ドライバ パッケージ マネージャ 電話 マネージャ リソース マネージャ 位置 マネージャ センサ マネージャ Home Contcts ( アドレス帳 ) Phone ( 電話 ) ブラウザ あなたの アプリケーション コアライブラリ Dalvik 仮想マシン
  12. 12. 概要 <ul><li>現在の主要なバージョン </li><ul><li>1.5
  13. 13. 1.6 (HT-03A, Xperia)
  14. 14. 2.1 (Nexus One) </li></ul><li>日本のAndroid端末 </li></ul>Xperia (2010 年 4 月 発売予定 ) Version 1.6 HT-03A (2009 年 6 月 発売 ) Version 1.5 -> 1.6(2009/10)
  15. 15. <ul>開発環境の構築 </ul>
  16. 16. 開発の準備 <ul><li>必要なもの </li><ul><li>Android SDK(最初にインストール)
  17. 17. Eclipse
  18. 18. Android Development Tools (ADT) ( プラグイン)
  19. 19. 実機 ( なくても大丈夫)
  20. 20. または、 Dev Phone </li><ul><li>開発者サイトから購入可
  21. 21. 開発者登録が必要 </li></ul></ul></ul>
  22. 22. 開発の準備 <ul><li>SDK </li><ul><li>http://developer.android.com/intl/ja/sdk/index.html
  23. 23. android-sdk_r04-windows.zip </li></ul><li>ZIP ファイル解凍後適当なディレクトリへ配置
  24. 24. SDK Setup.exe を実行 </li></ul>
  25. 25. 開発の準備 <ul><li>ここで、httpsでアクセスできなというエラーが出るとき </li></ul>
  26. 26. 開発の準備 <ul><li>ホームディレクトリの.androidディレクトリに </li><ul><li>androidtool.cfgを作成
  27. 27. 以下の一行を追加して、再度SDK Setup.exeを実行 </li></ul></ul>sdkman.force.http=true ※ 詳しくは、 <ul><ul><ul><li>http://d.hatena.ne.jp/hiro_nemu/20100107 </li></ul></ul></ul>
  28. 28. 開発の準備 <ul><li>今回入れるのは、以下の3つ </li><ul><li>SDK Platform Android 1.6 API
  29. 29. Google APIs
  30. 30. Usb Driver package </li></ul></ul>
  31. 31. 開発の準備 <ul><li>Eclipseプラグイン(ADT) </li><ul><ul><li>https://dl-ssl.google.com/android/eclipse/ </li></ul></ul></ul>
  32. 32. 開発の準備 <ul><li>ADTインストール後 </li><ul><li>Windows > Preferences > Android </li><ul><li>Android SDKのインストールパスを入れて完了 </li></ul></ul></ul>
  33. 33. 開発者登録
  34. 34. 開発者登録 <ul><li>開発者登録するとできること </li><ul><li>Androidマーケットでアプリを公開できる
  35. 35. 有料アプリも公開できる
  36. 36. Android Dev Phoneの購入 </li></ul><li>登録するには </li><ul><li>開発者登録には $25 必要
  37. 37. 支払いには Google Checkout が必要 </li><ul><li>クレジットカードによる決済 </li></ul></ul></ul>
  38. 38. 開発者登録の流れ <ul><li>メールアドレス、電話番号等の入力 </li></ul>
  39. 39. 開発者登録の流れ <ul><li>支払い(Google Checkout) </li></ul>
  40. 40. 開発者登録の流れ <ul><li>クレジットカード登録 </li></ul>
  41. 41. 開発者登録の流れ <ul><li>支払い完了 </li></ul>
  42. 42. 開発者登録の流れ <ul><li>開発者登録確認 </li></ul>
  43. 43. 開発者登録の流れ <ul><li>開発者登録完了 </li></ul>
  44. 44. <ul>Android プログラミング </ul>
  45. 45. 開発の基礎 <ul><li>アプリケーションは個別の Linux プロセス
  46. 46. プロセスごとに専用 VM
  47. 47. アプリケーションごとに個別の Linux ユーザ ID
  48. 48. コンポーネント </li><ul><li>アクティビティ
  49. 49. サービス
  50. 50. ブロードキャストレシーバ
  51. 51. コンテンツプロバイダ </li></ul><li>コンポーネントのアクティブ化:インテント </li><ul><li>非同期メッセージオブジェクト
  52. 52. Intent クラス </li></ul></ul>http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より
  53. 53. 開発の基礎 <ul><li>マニフェストファイル </li><ul><li>AndroidManifest.xml
  54. 54. コンポーネントを登録 </li></ul></ul>http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より
  55. 55. 開発の基礎 <ul><li>アクティビティとタスク </li><ul><li>アプリケーションランチャー </li></ul></ul>D:userssatakeデスクトップScreenShot2010y02m18d_131939500.jpg http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より
  56. 56. 開発の基礎 <ul><li>アクティビティとタスク </li></ul>アプリケーション A アプリケーション B D:userssatakeデスクトップScreenShot2010y02m18d_131939500.png http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より
  57. 57. 開発の基礎 <ul><li>アクティビティとタスク </li></ul>D:userssatakeデスクトップScreenShot2010y02m18d_131939500.png http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より D:userssatakeデスクトップScreenShot2010y02m18d_145543062.jpg 戻るボタン
  58. 58. 開発の基礎 <ul><li>アクティビティとタスク </li></ul>http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より D:userssatakeデスクトップScreenShot2010y02m18d_153536453.jpg ホームボタン D:userssatakeデスクトップScreenShot2010y02m18d_131939500.png タスク A D:userssatakeデスクトップScreenShot2010y02m18d_131939500.png タスク B
  59. 59. 開発の基礎 <ul><li>ライフサイクル </li></ul>1. onCreate() 2. onStart() 3 onRestoreInstanceState() 4. onResume() 1. onSaveInstanceState() 2. onPause onResume 1. onSaveInstanceState() 2. onStop() 1. onRestart() 2. onStart() 3. onResume() onDestroy() または <Process killed> <Process killed> 初めての Android ( 初版 ) P.18 より 起動 実行中 一時停止 破棄済み 停止
  60. 60. 開発の基礎 <ul><li>インテント </li><ul><li>明示的インテント </li><ul><li>クラス名を指定
  61. 61. アプリケーション内の他のコンポーネントを呼び出すような場合 </li></ul></ul></ul>http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より D:userssatakeデスクトップScreenShot2010y02m18d_131939500.png
  62. 62. 開発の基礎 <ul><li>インテント </li><ul><li>暗黙的インテント </li><ul><li>クラス名での指定を行わない
  63. 63. 他のアプリケーションを呼び出す場合
  64. 64. 他のアプリケーションから呼び出されたい場合 </li><ul><li>ある暗黙的インテントから Actirity を起動するとき、どの Activity で実行させるかシステムに判断させる(複数あるときはユーザが選択 ) </li></ul><li>IntentFilter </li><ul><li>ACTION
  65. 65. CATEGORY
  66. 66. DATA
  67. 67. TYPE </li></ul></ul></ul></ul>http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より http://developer.android.com/intl/ja/guide/topics/fundamentals.html  より D:userssatakeデスクトップScreenShot2010y02m18d_131939500.png
  68. 68. Todoリストアプリを考える <ul><li>Todoリストアプリ </li><ul><li>Todoを「入力・表示する画面」
  69. 69. 一覧からTodoを選んだとき表示する「編集画面」 </li></ul></ul>入力・一覧画面 編集画面
  70. 70. おさえておくこと <ul><li>ユーザインターフェースのこと
  71. 71. Activity
  72. 72. Intent </li></ul>
  73. 73. レイアウト <ul><li>Todoリストアプリのサンプル </li><ul><li>main.xml
  74. 74. todo_list.xml
  75. 75. edit.xml </li></ul></ul>XML で定義
  76. 76. レイアウト <ul><li>入力・一覧画面のレイアウト </li></ul>LinearLayout RelativeLayout ListView
  77. 77. main.xml <?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?> <LinearLayout android:id=&quot;@+id/LinearLayout01&quot; android:layout_width=&quot;fill_parent&quot; android:layout_height=&quot;fill_parent&quot; xmlns:android=&quot;http://schemas.android.com/apk/res/android&quot; android:orientation=&quot;vertical&quot;> <RelativeLayout android:id=&quot;@+id/RelativeLayout01&quot; android:layout_width=&quot;wrap_content&quot; android:layout_height=&quot;wrap_content&quot;> <EditText android:id=&quot;@+id/EditText01&quot; android:layout_height=&quot;wrap_content&quot; android:layout_width=&quot;fill_parent&quot; android:layout_marginRight=&quot;60dp&quot;></EditText> <Button android:layout_height=&quot;wrap_content&quot; android:id=&quot;@+id/ButtonAdd&quot; android:text=&quot;@string/label_add&quot; android:layout_alignParentTop=&quot;true&quot; android:layout_alignParentRight=&quot;true&quot; android:layout_width=&quot;wrap_content&quot; android:layout_marginRight=&quot;5dp&quot;></Button> </RelativeLayout> <ListView android:layout_width=&quot;wrap_content&quot; android:id=&quot;@android:id/list&quot; android:layout_height=&quot;fill_parent&quot;></ListView> </LinearLayout>
  78. 78. レイアウト <ul><li>todo_list.xmlのレイアウト </li></ul>LinearLayout CheckBox LinearLayout TextView
  79. 79. Rクラス <ul><li>画面のレイアウトに関するリソースの ID を管理
  80. 80. 自動で生成される
  81. 81. R.{ リソースタイプ }.{ リソース名 } で参照 </li><ul><li>R.layout.main ( レイアウト XML )
  82. 82. R.strings.label_add_button (文字リソース)
  83. 83. R.id.add_button (画面に配置したボタン等のオブジェクト)
  84. 84. etc.. </li></ul><li>ソースの中でオブジェクトを取得するには </li></ul>Button button = (Button) this .findViewById(R.id.add_button);
  85. 85. strings.xml <ul><li>画面に表示する文字を定義
  86. 86. 国際化も簡単 </li><ul><li>values/strings.xml (適当な言語が見つからなかった時のデフォルト)
  87. 87. values-ja/strings.xml (日本語) </li></ul></ul><?xml version=“1.0” encoding=“utf-8”?> <resources>     <string name=“app_name”>Todo Sample</string>     <string name=“ label_add_button ”> 追加 </string> </resources> レイアウトの XML では「 @string/ label_add_button 」で指定
  88. 88. Activity <ul><li>Activity </li></ul>MainActivity EditActivity
  89. 89. Intent <ul><li>コンポーネントの呼び出しを行う </li></ul>startActivity() startActivityForResult() onActivityResult
  90. 90. <ul>TODO アプリケーション の中身 </ul>
  91. 91. 公開してみる
  92. 92. 公開するには <ul><li>Android Market 経由で配布 </li><ul><li>開発者サイトから apk ファイルをアップロード </li></ul><li>ドコモマーケット </li><ul><li>http://www.nttdocomo.co.jp/info/news_release/page/100121_00.html#p02 </li></ul><li>PlayNow </li><ul><li>ソニー・エリクソン
  93. 93. 日本は対応するのか
  94. 94. 審査あり、有料アプリ ( 手数料 30 %)
  95. 95. http://andronavi.com/2010/01/4421 </li></ul><li>野良アプリ </li><ul><li>apk ファイルを Web 上で公開するだけ </li></ul></ul>
  96. 96. 公開するには <ul><li>Eclipse から apk ファイルを作成 </li><ul><li>ADT からウィザードで簡単に作成できる
  97. 97. 署名が必要 </li></ul><li>開発者サイトから apk ファイルをアップロード </li><ul><li>必要項目を記入してアップロードするだけ
  98. 98. すぐに反映 </li></ul><li>参考サイト </li><ul><li>http://itpro.nikkeibp.co.jp/article/COLUMN/20091218/342383/ </li></ul></ul>
  99. 99. その他 <ul><li>adb コマンド </li><ul><li>デバイスやエミュレータを管理
  100. 100. android-sdk-windows ools にある
  101. 101. シェルを使ってデバイスやエミュレータに接続する </li><ul><li>> adb shell
  102. 102. # echo $PATH ( 実行できるプログラムの場所 ) </li></ul><li>adb を使ったアプリケーションの追加・削除 </li><ul><li>> adb uninstall sample.todo.android
  103. 103. > adb install sample-todo-android.apk </li></ul></ul></ul>
  104. 104. 参考URL <ul><li>開発者サイト </li><ul><li>http://developer.android.com/ </li></ul><li>開発の基礎 ( 開発者サイト ) </li><ul><li>http://developer.android.com/intl/ja/guide/topics/fundamentals.html </li></ul><li>暗黙の Intent を投げてみた </li><ul><li>http://d.hatena.ne.jp/minghai/20090316/ </li></ul><li>インテントについて ( 開発者サイト ) </li><ul><li>http://developer.android.com/intl/ja/reference/android/content/Intent.html
  105. 105. http://developer.android.com/intl/ja/guide/topics/intents/intents-filters.html </li></ul><li>エミュレータのショートカット </li><ul><li>http://www.android.encke.net/android-emulator-tutorial.html </li></ul></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×