高度な Android 開発

無料で自習形式の高度な Android 開発のトレーニングを受講して Andoid のコーディング スキルのレベルアップを目指しましょう。このコースでは、Java プログラミング言語を使用して、ユーザー エクスペリエンスの拡張、アプリのパフォーマンスの改善、カスタムビュー、アニメーション、位置認識などの機能の追加を行う方法を学習できます。

各レッスンには、GitHub の解答コードを使ったチュートリアル、コンセプトについてのドキュメント、スライド資料が用意されています。

コースについて

高度な Android 開発コースは、Google Developers トレーニング チームによって作成されたものです。コースには次の内容が含まれます。

各レッスンには、ハンズオン コーディング演習を含む 1 つ以上の Codelab と、スライドと概念のチャプターがあります。Codelab に沿って、学習したスキルを練習して改善するためのアプリを作成できます。

この資料は、経験豊富なデベロッパーによる自習用の無料オンライン版です。

高度な Android 開発は、Android デベロッパーの基礎コンパニオン コースであり、Associate Android Developer 認定資格試験の準備に役立ちます。

コース内容

高度な Android 開発には、5 つのユニットがあります。

ユニット 1: ユーザー エクスペリエンスを拡張する

このユニットでは、アプリを拡張してユーザー エクスペリエンスを向上させる方法について説明します。フラグメント、ウィジェット、センサーを使用する方法を学習します。

ユニット 1 の各レッスンは、このユニットの他のレッスンから独立しています。たとえば、フラグメントとウィジェットのレッスンを完了せずにセンサー レッスンを受講できます。

レッスン 1: フラグメント

このレッスンでは、フラグメントを使用するタイミング、理由、方法について説明します。アクティビティの UI にフラグメントを静的または動的に含める方法を学習します。 また、アクティビティがフラグメントと通信する方法も学習します。マスター / ディテール レイアウトを含むアプリを作成することで、フラグメントの典型的なシナリオを実装します。

レッスン 2: アプリ ウィジェット

Android のホーム画面に表示される小さなアプリビューであるアプリ ウィジェットについて学習します。プロジェクトにウィジェットを追加する方法、更新リクエストを処理する方法、ウィジェットをインタラクティブにする方法を学習します。

レッスン 3: センサー

Android センサー フレームワーク使って加速度センサーや地磁気センサーなどのデバイス センサーからデータを取得する方法を学習します。デバイスのチルトに反応するアプリを作成します。

ユニット 2: アプリを高速化し、アプリのサイズを小さくする

このユニットでは、ツールを使ってアプリのパフォーマンスの問題を特定し、アプリの実行を高速かつ効率的に行えるようにする方法について説明します。

レッスン 4: パフォーマンス

このレッスンでは、Android アプリのパフォーマンスが重要な理由と、アプリのパフォーマンスを最適化する方法について説明します。

レンダリングとメモリのパフォーマンスを測定および改善する方法を学習し、ネットワーク呼び出し、電池使用量、データ圧縮のベスト プラクティスについて学習します。Android Studio に付属の Android Profiler ツール、デバイス上にあるコマンドライン ツール、その他のツールを使用します。

ユニット 3: アプリにアクセスできるようにする

このユニットでは、アプリを他の言語にローカライズする方法と、障がいのあるユーザーがアプリを簡単に使用できるようにする方法について説明します。

レッスン 5: ローカライズ

Android Studio で文字列リソースと Translations Editor を使って、さまざまな言語をサポートする方法を学習します。また、日付、時刻、数値、通貨などの情報を、ユーザーが選択したロケールの形式で表示する方法も学習します。

レッスン 6: ユーザー補助機能

障がいのあるユーザーを含む、すべてのユーザーがアプリを利用できるようにする方法を学習します。Android プラットフォームで利用できるさまざまなユーザー補助オプションについて学習し、アプリを変更して使いやすさを向上させる方法を学習する。

ユニット 4: アプリに地理位置情報機能を追加する

このユニットでは、アプリを拡張して位置情報機能を追加する方法について説明します。また、Places API を使ってデバイスの場所を検出および使用する方法、地図を作成および表示する方法についても説明します。

レッスン 7: 位置情報

位置情報サービス API を使って、デバイスの位置に関する情報を取得し、定期的に位置情報の更新を受信し、地理座標を住所に変換する方法を学習します。

レッスン 8: 場所

ユーザーの現在地(図書館、学校、駅など)を検出する方法と、アプリで場所を検索できるようにする方法を学習します。

レッスン 9: 地図作成

Google マップをアプリに統合する方法や、位置マーカー、地図のスタイル設定、ストリートビュー、位置情報追跡などの機能を使用する方法を学習します。

ユニット 5: 高度なグラフィックとビュー

このユニットでは、高度なグラフィックとカスタムのビューを作成する方法について説明します。

レッスン 10: カスタムビュー

このレッスンでは、ビューの機能(ボタンやテキスト フィールドなど)を拡張または置換するカスタムビューを作成する方法について説明します。カスタムビューは親ビューの外観と動作を継承し、変更する動作または外観のプロパティをオーバーライドできます。

レッスン 11: キャンバス

キャンバス オブジェクト上で描画する方法、onDraw() メソッドをオーバーライドする方法、クリッピング手法を使って描画を最適化する方法を学習します。このレッスンでは、SurfaceView オブジェクトを使って別のスレッドから描画するアプリを作成します。

レッスン 12: アニメーション

このレッスンでは、Android でさまざまなタイプのアニメーションを作成する方法について説明します。プロパティ アニメーションを使用する方法、アニメーションをセットにグループ化する方法、インターポレーターを使用する方法、物理学ベースのアニメーションを使ってテストする方法を学習します。

レッスン 13: 動画を再生する

このレッスンでは、アプリで動画を再生する方法、動画コントローラを表示および使用する方法、アプリに埋め込まれている動画やインターネットからストリーミングされたメディア ファイルを再生する方法を紹介します。

前提条件

高度な Android 開発コースは、Java プログラミングの経験があり、Java 言語を使って Android アプリを作成する方法の基礎を理解しているデベロッパーを対象としています。このコースでは、Android デベロッパーの基礎コースのユニット 1~4 に関するトピックを習熟していることを前提とします。

具体的には、このコースでは次の方法を理解している必要があります。

  • Android Studio をインストールして使用する。
  • デバイスとエミュレータの両方で Android Studio からアプリを実行する。
  • Android でアクティビティを作成して使用する。
  • ビューを使ってアプリのユーザー インターフェースを作成する。
  • クリック ハンドラを通じてユーザー インタラクションを有効化する。
  • Android Studio の Layout Editor を使ってレイアウトを作成する。
  • RecyclerView を作成して使用する。
  • バックグラウンドでタスクを実行する。
  • Android の共有設定でデータを保存する。
  • ローカル データベースにデータを保存する。