8.1.3. 2. 2 Android タブレットアプリ開発ガイド Android SDK 3 対応((株)翔泳社)![]() 自作パソコンのWindows 7(32bit)環境で学習予定です。 1.学習時期 xxxx/xx/xx〜 2.目次
第1章 Android SDK 3 の特徴
1-1 Android タブレット端末と市場の拡がり ---------------------------------------------------------------- 1-1-1 盛り上がるタブレット端末市場 ------------------------------------------------------------------ 1-1-2 iPad とAndroid タブレット端末の違い ----------------------------------------------------------- 1-1-3 Android SDK 3.1 の登場 ------------------------------------------------------------------------ 1-1-4 Android SDK 3.2 の登場 ------------------------------------------------------------------------ 1-2 Android SDK 3.0/3.1/3.2 の機能 ---------------------------------------------------------------------- 1-2-1 Fragment(UI) -------------------------------------------------------------------------------- 1-2-2 ActionBar(UI) ------------------------------------------------------------------------------- 1-2-3 System clipboard(機能) ---------------------------------------------------------------------- 1-2-4 Drag and Drop(機能) ------------------------------------------------------------------------- 1-2-5 AppWidget(UI) ------------------------------------------------------------------------------- 1-2-6 Status bar notifications(UI) ---------------------------------------------------------------- 1-2-7 Bluetooth A2DP and headset API(機能) -------------------------------------------------------- 1-2-8 Animation Framework(機能) ------------------------------------------------------------------- 1-2-9 RenderScript(機能) -------------------------------------------------------------------------- 1-2-10 Open Accessory(機能) ----------------------------------------------------------------------- 1-2-11 複数のディスプレイサイズに最適化 ------------------------------------------------------------- 第2章 Android タブレットアプリ開発環境の構築 2-1 Android タブレットアプリの開発環境を構築する -------------------------------------------------------- 2-1-1 JDK(Java SE Development Kit)のインストール -------------------------------------------------- 2-1-2 Android SDK のインストール -------------------------------------------------------------------- 2-1-3 Android SDK パッケージのダウンロード ---------------------------------------------------------- 2-1-4 Eclipse のダウンロードと日本語化 -------------------------------------------------------------- 2-1-5 ADT Plugin for Eclipse のインストール --------------------------------------------------------- 2-2 実機を用いてデバッグを行う -------------------------------------------------------------------------- 2-2-1 MOTOROLA 製XOOM とは -------------------------------------------------------------------------- 2-2-2 USBドライバのインストール --------------------------------------------------------------------- 2-2-3 実機(XOOM)をデバッグ可能に設定する ---------------------------------------------------------- 2-2-4 プロジェクトを実機デバッグ可能に設定する ------------------------------------------------------ 第3章 Android タブレットアプリ開発で利用する機能とAPI 3-1 Android SDK 3.0 以降で追加されたタブレット向けAPI --------------------------------------------------- 3-1-1 タブレットアプリ開発で必要なAPI の知識 -------------------------------------------------------- 3-1-2 本章で紹介するサンプルアプリケーションについて ------------------------------------------------ 3-2 タブレットアプリとスマートフォンアプリ開発の違い ---------------------------------------------------- 3-2-1 Fragment とActionBar による大画面ディスプレイに最適化されたUI -------------------------------- 3-2-2 Fragment とActionBar の登場 ------------------------------------------------------------------ 3-3 ClipboardManager を利用する ------------------------------------------------------------------------- 3-3-1 サンプルアプリケーションの概要 --------------------------------------------------------------- 3-3-2 テキスト/ Intent のコピー機能を実装する ----------------------------------------------------- 3-3-3 Uri のコピー機能を実装する ------------------------------------------------------------------- 3-3-4 コピーしたデータを取得する ------------------------------------------------------------------- 3-4 ActionBar を利用する -------------------------------------------------------------------------------- 3-4-1 サンプルアプリケーションの概要 --------------------------------------------------------------- 3-4-2 ActionBar にオプションメニューを配置する ----------------------------------------------------- 3-4-3 レイアウトファイルを使用する ----------------------------------------------------------------- 3-4-4 ActionBar にタブを配置する ------------------------------------------------------------------- 3-4-5 ActionBar のタブにListener を追加する -------------------------------------------------------- 3-4-6 ActionBar のレイアウトを変更する ------------------------------------------------------------- 3-4-7 ActionBar にandroid.widget クラスのオブジェクトを配置する ------------------------------------ 3-5 SearchView を利用する ------------------------------------------------------------------------------- 3-5-1 サンプルアプリケーションの概要 --------------------------------------------------------------- 3-5-2 SearchView で検索処理を実装する -------------------------------------------------------------- 3-6 StackView を利用する -------------------------------------------------------------------------------- 3-6-1 サンプルアプリケーションの概要 --------------------------------------------------------------- 3-6-2 StackView をAppWidget として実装する --------------------------------------------------------- 3-6-3 アイテムを格納するクラスを作成する ----------------------------------------------------------- 3-6-4 AppWidget の本体のクラスを作成する ----------------------------------------------------------- 3-6-5 マニフェストファイルを修正する --------------------------------------------------------------- 3-7 Loader を利用する ----------------------------------------------------------------------------------- 3-7-1 サンプルアプリケーションの概要 --------------------------------------------------------------- 3-7-2 Loader を使用してデータを読み込む ------------------------------------------------------------ 3-8 アニメーションを利用する その1 --------------------------------------------------------------------- 3-8-1 サンプルアプリケーションの概要 --------------------------------------------------------------- 3-8-2 画面の背景色がグラデーションにより変化する --------------------------------------------------- 3-8-3 「 タップした場所からボールが落下し、地面で跳ね返って戻り、消える」動きを実装する ------------- 3-9 アニメーションを利用する その2 --------------------------------------------------------------------- 3-9-1 サンプルアプリケーションの概要 --------------------------------------------------------------- 3-9-2 [ Play][Cancel][End]ボタンをタップして、アニメーションの開始や中断、終了を行う ---------- 3-9-3 アニメーション実行中に各種イベントが発生する ------------------------------------------------- 3-10 アニメーションを利用する その3 -------------------------------------------------------------------- 3-10-1 サンプルアプリケーションの概要 -------------------------------------------------------------- 3-10-2 4 つのチェックボックスにそれぞれチェックを入れるとアニメーションが付加される ---------------- 3-10-3 [CustomAnimation]のチェックボックスにチェックを入れると、複雑なアニメーションが付加される -- 3-11 アニメーションを利用する その4 -------------------------------------------------------------------- 3-11-1 サンプルアプリケーションの概要 -------------------------------------------------------------- 3-11-2 [Flip]ボタンをタップするとリストが反転(フリップ)する ------------------------------------- 3-11-3 紹介できなかったその他のAPI ----------------------------------------------------------------- 3-12 Drag and Drop を利用する --------------------------------------------------------------------------- 3-12-1 サンプルアプリケーションの概要 -------------------------------------------------------------- 3-12-2 ドットをタッチすると、ドラッグを開始する ---------------------------------------------------- 3-12-3 ドラッグからドロップまでのイベント ---------------------------------------------------------- 3-12-4 Drag and Drop サンプルで使用しているその他のメソッド ---------------------------------------- 3-13 複数選択モードリスト ------------------------------------------------------------------------------- 3-13-1 サンプルアプリケーションの概要 -------------------------------------------------------------- 3-13-2 リストの項目をタッチすると、複数選択モードに遷移する ---------------------------------------- 3-13-3 リストを選択すると、項目ごとに配置されたチェックボックスにチェックが入る -------------------- 第4章 Fragment を使った情報表示アプリの開発 4-1 サンプルアプリケーションの概要 ---------------------------------------------------------------------- 4-1-1 サンプルアプリケーションの概要 ---------------------------------------------------------------- 4-1-2 Fragment のバックスタックの仕組みを学ぶサンプル(4-11 節) ----------------------------------- 4-2 Fragment の概要とその種類 --------------------------------------------------------------------------- 4-2-1 Fragment とディスプレイサイズ ----------------------------------------------------------------- 4-2-2 Fragment クラスの種類 ------------------------------------------------------------------------- 4-3 Fragment のライフサイクル --------------------------------------------------------------------------- 4-3-1 Fragment のライフサイクルを実装するメソッド -------------------------------------------------- 4-4 Fragment の使い方の基礎 ----------------------------------------------------------------------------- 4-4-1 FrameLayout を使用してFragment を配置する ----------------------------------------------------- 4-5 Fragment にContextMenu を加える --------------------------------------------------------------------- 4-5-1 ContextMenu の実装 ---------------------------------------------------------------------------- 4-6 ListFragment でリスト表示をする --------------------------------------------------------------------- 4-6-1 ListFragment を使用する ----------------------------------------------------------------------- 4-7 DialogFragment で情報を通知する --------------------------------------------------------------------- 4-7-1 DialogFragment を使用する --------------------------------------------------------------------- 4-8 フェードイン/アウトのアニメーションをFragment に設定する ------------------------------------------- 4-8-1 フェードイン/アウトのアニメーションの実装 ---------------------------------------------------- 4-9 Fragment で他のActivity からデータを受け取る -------------------------------------------------------- 4-9-1 Fragment クラスのonActivityResult メソッドでデータを受け取る --------------------------------- 4-10 PreferenceFragment で設定画面を作る ---------------------------------------------------------------- 4-10-1 PreferenceFragment を使用する ---------------------------------------------------------------- 4-11 実行中のFragment をバックスタックに入れる ---------------------------------------------------------- 4-11-1 Fragment をバックスタックに入れる ------------------------------------------------------------ 4-11-2 特定のFragmentTransaction を指定して戻る ----------------------------------------------------- 4-11-3 1 つのトランザクションの中で複数のFragment の置き換えを行う --------------------------------- 第5章 RenderScript を使った3D 描画アプリの開発 5-1 サンプルアプリケーションの概要 ---------------------------------------------------------------------- 5-1-1 サンプル「Chapter05_sample01」の概要 ---------------------------------------------------------- 5-1-2 サンプル「Chapter05_sample02」の概要 ---------------------------------------------------------- 5-1-3 サンプル「Chapter05_sample03」の概要 ---------------------------------------------------------- 5-1-4 サンプル「Chapter05_sample04」の概要 ---------------------------------------------------------- 5-1-5 サンプル「Chapter05_sample05」の概要 ---------------------------------------------------------- 5-2 RenderScript を利用したアプリケーションの構成 ------------------------------------------------------- 5-2-1 RenderScript とは ----------------------------------------------------------------------------- 5-2-2 アプリケーションの構成 ------------------------------------------------------------------------ 5-2-3 RenderScript のHello! World ------------------------------------------------------------------- 5-2-4 RenderScript のメモリ参照 --------------------------------------------------------------------- 5-3 RenderScript Layer と通信を行う --------------------------------------------------------------------- 5-3-1 RenderScript Layer との連係 ------------------------------------------------------------------- 5-3-2 RenderScript Layer の関数 --------------------------------------------------------------------- 5-3-3 RenderScript Layer とのメッセージ通信 --------------------------------------------------------- 5-4 RenderScript を利用してテクスチャを描画する --------------------------------------------------------- 5-4-1 OpenGL と3D 描画について ---------------------------------------------------------------------- 5-4-2 描画領域の設定 -------------------------------------------------------------------------------- 5-4-3 正射影と透視法射影 ---------------------------------------------------------------------------- 5-4-4 頂点(ProgramVertex)の設定 ------------------------------------------------------------------- 5-4-5 フラグメント(ProgramFragment とProgramStore)の設定 ----------------------------------------- 5-4-6 テクスチャの貼り付け -------------------------------------------------------------------------- 5-4-7 Sampler のモード ------------------------------------------------------------------------------ 5-4-8 図形を描画する -------------------------------------------------------------------------------- 5-5 メッシュを作成してテクスチャを貼り付ける ------------------------------------------------------------ 5-5-1 メッシュを使用した描画 ------------------------------------------------------------------------ 5-5-2 ポリゴンメッシュの設定 ------------------------------------------------------------------------ 5-5-3 ポリゴンメッシュの作成 ------------------------------------------------------------------------ 5-6 3D ポリゴンメッシュを作成する ----------------------------------------------------------------------- 5-6-1 3D ポリゴンメッシュの作成 --------------------------------------------------------------------- 5-6-2 メッシュの拡大縮小と回転 ---------------------------------------------------------------------- 5-6-3 RenderScriptAPI のこれから -------------------------------------------------------------------- 第6章 Google Map API を使った地図情報アプリの開発 6-1 サンプルアプリケーションの概要 ---------------------------------------------------------------------- 6-1-1 サンプルアプリケーションの概要 ---------------------------------------------------------------- 6-2 Google Maps を利用する準備 -------------------------------------------------------------------------- 6-2-1 Maps API Key の取得 --------------------------------------------------------------------------- 6-2-2 プロジェクトのプロパティとマニフェストファイルの設定 ------------------------------------------ 6-3 foursquare とは ------------------------------------------------------------------------------------- 6-3-1 foursquare は位置情報連係サービス ------------------------------------------------------------- 6-3-2 foursquare の専門用語について ----------------------------------------------------------------- 6-3-3 公開されているウェブAPI について -------------------------------------------------------------- 6-4 OAuth2.0 による認証 --------------------------------------------------------------------------------- 6-4-1 OAuth2.0 とは --------------------------------------------------------------------------------- 6-4-2 OAuth2.0 の処理フロー ------------------------------------------------------------------------- 6-4-3 foursquare にOAuth2.0 で認証する -------------------------------------------------------------- 6-5 現在地を表示する ------------------------------------------------------------------------------------ 6-5-1 マップ上に画像を表示するには? ---------------------------------------------------------------- 6-5-2 MyLocationOverlay を使う ---------------------------------------------------------------------- 6-5-3 現在地を取得したタイミングで処理を実行する ---------------------------------------------------- 6-6 ウェブAPI アクセス用クラスの定義 -------------------------------------------------------------------- 6-6-1 GET 用とPOST 用のメソッドの定義 --------------------------------------------------------------- 6-6-2 各API 用のメソッドの定義 ---------------------------------------------------------------------- 6-7 周辺スポット情報の取得と表示 ------------------------------------------------------------------------ 6-7-1 周辺スポット情報を取得する -------------------------------------------------------------------- 6-7-2 ItemizedOverlay の利用 ------------------------------------------------------------------------ 6-7-3 マップアプリ用のレイアウト -------------------------------------------------------------------- 6-8 スポットにチェックインする -------------------------------------------------------------------------- 6-8-1 スポットの詳細情報を表示する ------------------------------------------------------------------ 6-8-2 スポットにチェックインする -------------------------------------------------------------------- 6-9 スポットを追加する ---------------------------------------------------------------------------------- 6-9-1 Overlay を使用する ---------------------------------------------------------------------------- 6-9-2 スポットを追加する ---------------------------------------------------------------------------- 6-10 リリース用の設定について --------------------------------------------------------------------------- 6-10-1 リリース用API Key の取得 --------------------------------------------------------------------- 6-10-2 デバッグ用レイアウトとリリース用レイアウト作成 ----------------------------------------------- 6-10-3 デバッグ時とリリース時で読み込むレイアウトを自動で切り替える -------------------------------- 第7章 アプリ内課金システムを使ったメディアプレイヤーの開発 7-1 サンプルアプリケーションの概要 ---------------------------------------------------------------------- 7-1-1 サンプルアプリケーションの概要 ---------------------------------------------------------------- 7-2 タブレット端末に適したメディアプレイヤー ------------------------------------------------------------ 7-2-1 Fragment を活用した画面レイアウト ------------------------------------------------------------- 7-2-2 音楽の再生機能の実装 -------------------------------------------------------------------------- 7-3 カスタムNotification(ノーティフィケーション) ------------------------------------------------------ 7-3-1 Notification 上にボタンを配置する ------------------------------------------------------------- 7-4 アプリ内課金を実装する ------------------------------------------------------------------------------ 7-4-1 アプリ内課金とは ------------------------------------------------------------------------------ 7-4-2 アプリ内課金の仕組み -------------------------------------------------------------------------- 7-4-3 アプリ内課金の要件と制限 ---------------------------------------------------------------------- 7-4-4 アプリ内課金メッセージ ------------------------------------------------------------------------ 7-4-5 メッセージ処理シーケンス ---------------------------------------------------------------------- 7-4-6 MarketBillingService インターフェース --------------------------------------------------------- 7-4-7 プロジェクトにAIDL ファイルを追加する --------------------------------------------------------- 7-4-8 その他ソースコードのコピー -------------------------------------------------------------------- 7-4-9 マニフェストファイルの設定 -------------------------------------------------------------------- 7-4-10 アプリ内課金リクエストの共通処理 ------------------------------------------------------------- 7-4-11 REQUEST_PURCHASE リクエストの処理をする ------------------------------------------------------ 7-4-12 IN_APP_NOTIFY メッセージの処理をする --------------------------------------------------------- 7-4-13 GET_PURCHASE_INFORMATION リクエストの処理をする ---------------------------------------------- 7-4-14 PURCHASE_STATE_CHANGED メッセージの処理をする ------------------------------------------------ 7-4-15 CONFIRM_NOTIFICATIONS リクエストの処理をする ------------------------------------------------- 7-5 アプリ内課金をテストする ---------------------------------------------------------------------------- 7-5-1 静的レスポンスを利用したテスト ---------------------------------------------------------------- 7-5-2 独自のプロダクトID を使ったテスト ------------------------------------------------------------- 7-6 セキュリティ対策について ---------------------------------------------------------------------------- 7-6-1 アプリ内課金アプリケーションのセキュリティと設計で必要な8 つのポイント ----------------------- 第8章 HTML5 を使った電子雑誌アプリの開発 8-1 サンプルプログラムの概要 ---------------------------------------------------------------------------- 8-1-1 ウェブ技術を利用したタブレットアプリ開発 ------------------------------------------------------ 8-1-2 ウェブ技術を利用する理由 ---------------------------------------------------------------------- 8-1-3 本章がターゲットとする開発者 ------------------------------------------------------------------ 8-1-4 サンプルアプリケーションの概要 ---------------------------------------------------------------- 8-2 Android で活用できるウェブ技術 ---------------------------------------------------------------------- 8-2-1 HTML5 に代表されるウェブ技術の進化 ------------------------------------------------------------ 8-2-2 Android 3.0 以降のHTML5 対応状況 -------------------------------------------------------------- 8-2-3 ウェブ技術を使ったAndroid アプリのアーキテクチャ --------------------------------------------- 8-2-4 開発環境の構築 -------------------------------------------------------------------------------- 8-2-5 デバッグの方法 -------------------------------------------------------------------------------- 8-2-6 HTML5 を活用したAndroid アプリ開発のプロセス ------------------------------------------------- 8-3 WebView を使ってウェブコンテンツを利用する ---------------------------------------------------------- 8-3-1 WebView の使い方 ------------------------------------------------------------------------------ 8-3-2 JavaScript とJava の連係 ---------------------------------------------------------------------- 8-3-3 WebView を利用する場合の注意点 ---------------------------------------------------------------- 8-4 HTML5 の機能を活用して電子雑誌を作る ---------------------------------------------------------------- 8-4-1 電子雑誌を実現するTreesaver ------------------------------------------------------------------- 8-4-2 レイアウトを定義するファイルを作る ------------------------------------------------------------ 8-4-3 左メニューのコンテンツを作成する -------------------------------------------------------------- 8-4-4 メインコンテンツを作る ------------------------------------------------------------------------ 8-5 HTML5 の機能を使ったウェブコンテンツ ---------------------------------------------------------------- 8-5-1 SVG(Scalable Vector Graphics) --------------------------------------------------------------- 8-5-2 Canvas ---------------------------------------------------------------------------------------- 8-5-3 Application Cache ----------------------------------------------------------------------------- 8-5-4 Web Storage ----------------------------------------------------------------------------------- 8-5-5 Geolocation ----------------------------------------------------------------------------------- 8-5-6 Audio ----------------------------------------------------------------------------------------- 8-5-7 Sensor ---------------------------------------------------------------------------------------- 8-5-8 ウェブ技術を使いこなすために ------------------------------------------------------------------- 8-5-9 HTML5 を使ったAndroid アプリ開発のこれから ---------------------------------------------------- 第9章 マルチタッチ機能を使った対戦ゲームアプリの開発 9-1 マルチタッチとセンサーを活用するゲームを作る -------------------------------------------------------- 9-1-1 サンプルアプリケーションの概要 ---------------------------------------------------------------- 9-2 マルチタッチ機能を使いこなす ------------------------------------------------------------------------ 9-2-1 入力インターフェース -------------------------------------------------------------------------- 9-2-2 タッチイベントを検出する ---------------------------------------------------------------------- 9-2-3 タッチイベントを制御するonTouchEvent メソッド ------------------------------------------------- 9-2-4 タッチイベントを理解する ---------------------------------------------------------------------- 9-2-5 アクションの取得 ------------------------------------------------------------------------------ 9-2-6 入力デバイスの判定 ---------------------------------------------------------------------------- 9-2-7 マルチタッチの検出 ---------------------------------------------------------------------------- 9-2-8 タッチを判別する ------------------------------------------------------------------------------ 9-3 マルチタッチ制御を実装する -------------------------------------------------------------------------- 9-3-1 エアホッケーゲームのクラス関係 ---------------------------------------------------------------- 9-3-2 マルチタッチを受け取る ------------------------------------------------------------------------ 9-3-3 プレイヤーの位置を更新する -------------------------------------------------------------------- 9-3-4 イベント処理の精度を上げるために必要なこと ---------------------------------------------------- 9-4 ゲームロジックを組み込む ---------------------------------------------------------------------------- 9-4-1 ゲームはアプリの主役 -------------------------------------------------------------------------- 9-4-2 エアホッケーゲームを作る ---------------------------------------------------------------------- 9-4-3 エアホッケーゲームの構成 ---------------------------------------------------------------------- 9-4-4 描画手法を選択する ---------------------------------------------------------------------------- 9-4-5 SurfaceView を実装する ------------------------------------------------------------------------ 9-4-6 ホッケーの移動と衝突判定 ---------------------------------------------------------------------- 9-5 ハードウェアデバイスをエフェクトに活用する ---------------------------------------------------------- 9-5-1 ハードウェアデバイスを使う -------------------------------------------------------------------- 9-5-2 バイブレーション機能を使う -------------------------------------------------------------------- 9-5-3 センサーを使いこなす -------------------------------------------------------------------------- 9-6 USB 機器を接続する ---------------------------------------------------------------------------------- 9-6-1 Android 端末とUSB ----------------------------------------------------------------------------- 9-6-2 USB ホストモード ------------------------------------------------------------------------------ 9-6-3 USB アクセサリーモード ------------------------------------------------------------------------ 9-6-4 Android Open Accessory Development Kit(ADK)の利用 ------------------------------------------ 9-6-5 Android ADK と連係する ------------------------------------------------------------------------ 3.作成アプリケーション(実習結果) 4.感想等 トップページヘもどる |