進行状況の追跡を始めよう
Trailhead のホーム
Trailhead のホーム

ネイティブ Android 開発の開始

学習の目的

この単元を完了すると、次のことができるようになります。

  • Mobile SDK for Android の 2 つの主要な機能を説明する
  • Mobile SDK for Android をインストールする
  • Android アプリケーションを作成し、アプリケーションオプションを指定する
  • Android Studio でアプリケーションをインポートおよびビルドする

Android ネイティブアプリケーションの開発

Mobile SDK for Android には、世界で最も人気のあるモバイルプラットフォームである Android 向けに Salesforce 対応アプリケーションを構築するために必要なツールとリソースが揃っています。このモジュールでは、Android ネイティブ SDK の基本機能について学習します。

  • OAuth2 認証フローの自動化。これにより、プロセスをアプリケーションに統合しやすくなります。
  • Salesforce REST API へのアクセス。アクセスを簡略化するユーティリティクラスが使用されます。

では始めましょう。ここでは「Set Up Your Mobile SDK Development Environment (Mobile SDK 開発環境の設定)」プロジェクトをすでに完了していることを前提にしています。まだ完了していない場合には、そのプロジェクトに移動して、開発環境を正しく設定してください。先に進む準備が整ったら、最初に簡単なネイティブ Android アプリケーションを作成します。内部のしくみを簡単に学習した後、アプリケーションの REST 操作とユーザインターフェースを変更して Android 開発スキルにさらに磨きをかけます。

接続アプリケーションの作成

重要

重要

このモジュールの前提条件として、接続アプリケーションについての手順が含まれる「Salesforce Mobile SDK の基礎」モジュールを完了する必要があります。接続アプリケーションを作成せずにこの単元の Challenge を完了することはできません。

Salesforce サービスに接続するには、すべてのモバイルアアプリケーションに Salesforce 接続アプリケーションが必要です。接続アプリケーションは、アプリケーションが Salesforce と通信を行い、Salesforce API に安全にアクセスするための認証を行います。

接続アプリケーションを作成して保存すると、詳細が表示されます。
  • [コールバック URL][コンシューマ鍵] の値をコピーします。これらの値はアプリケーションの認証設定に使用します。
  • Mobile SDK アプリケーションではコンシューマの秘密は使用しないため、この値は無視できます。

Android プロジェクトの作成

Android 開発環境を設定し、Salesforce 接続アプリケーションを作成したので、最初の forcedroid アプリケーションを作成する準備が整いました。

  1. コマンドプロンプトで、プロジェクトを保存するディレクトリに変更し、次のように入力します。
    forcedroid create
  2. forcedroid は次の値の入力を促します。
    • Application type (アプリケーション種別): native (ネイティブ)
    • Application name (アプリケーション名): MyTrailNative
    • Package name (パッケージ名): com.mytrail.android
    • Organization name (組織名): MyApps, Inc.
    • Output directory (出力ディレクトリ): TrailAndroidApps

一連のログメッセージの後、成功のメッセージが表示され、コマンドプロンプトに戻ります。おめでとうございます。新しいアプリケーションが実行できる状態になりました。

新しい Android アプリケーションの実行

forcedroid によって作成されたプロジェクトは、すぐに実行できる状態になっています。多くの処理は行いません。簡単な SOQL クエリを実行し、名前の表を表示するだけですが、少なくともアプリケーションとしてのまとまりがあり、目的の処理を実行する準備ができています。では、実際に確認してみましょう。

forcedroid では、ネイティブアプリケーションを作成するときに、コンシューマ ID とコールバック URI に汎用値が代入されます。どのアプリケーションも、Salesforce サーバおよびデータに接続するためにこれらの値が必要です。アプリケーションを公開する前に、汎用設定を独自の接続アプリケーションの値に置き換える必要があります。忘れないためにも、この時点で置き換えておきましょう。

  1. UTF-8 に準拠しているテキストエディタで、プロジェクトディレクトリから app\res\values\bootconfig.xml を開きます。(Windows でのヒント: notepad.exe の ANSI 文字コード (ファクトリデフォルト) は機能しません。ただし、メモ帳の [別名で保存] ダイアログボックスで UTF-8 文字コードを選択できます。)
  2. remoteAccessConsumerKey 値を接続アプリケーションからのコンシューマキーに置き換えます。
  3. 同様に、oauthRedirectURI 値を接続アプリケーションからのコールバック URL に置き換えます。
  4. ファイルを UTF-8 文字コードで保存します。
これで終了です。Mobile SDK を使用する Android ネイティブアプリケーションを作成してパーソナライズすることができました。次は、このアプリケーションを Android Studio でビルドして実行します。
  1. Android Studio を起動します。
  2. ようこそ画面から [プロジェクトをインポート (Eclipse ADT、Gradle など)] を選択します。または、Android Studio がすでに実行されている場合は、[ファイル] | [新規] | [プロジェクトをインポート] を選択します。
  3. ターゲットディレクトリ (TrailAndroidApps) を参照して、[OK] をクリックします。

    Android Studio によってワークスペースが自動的に作成されます。このプロセスに数分かかることがあります。ステータスバーに「Gradle build successful (Gradle のビルドに成功しました)」と表示されていれば、プロジェクトを実行できます。

  4. [実行] | [アプリケーションを実行] をクリックするか、SHIFT+F10 キー (Windows) または ^R キー (Mac) を押します。
  5. Android SDK API 23 以降 (Android 10 (API 29) 以前) を実行するエミュレータまたは接続デバイスを選択します。

    Android Studio によってエミュレータまたは接続されている Android デバイスにアプリケーションが起動します。