Xamarin のエンドツーエンドのデモンストレーション

improve this page | report issue

概説

このデモンストレーションの目的は、エンドツーエンドのフローを体験することです。

  1. MobileFirst Xamarin クライアント SDK と事前にバンドルされているサンプル・アプリケーションは、MobileFirst Operations Console に登録済みです。
  2. 新規または提供済みのアダプターは MobileFirst Operations Console にデプロイされています。
  3. アプリケーション・ロジックは、リソース要求を行うために変更されています。

終了結果:

  • MobileFirst Server を正常に ping している。

前提条件:

  • Xamarin Studio
  • オプション。スタンドアロン MobileFirst Server (ダウンロード)

1. MobileFirst Server の開始

Mobile Foundation インスタンスが作成済みであることを確認してください。作成済みでない場合は、
MobileFirst Developer Kitを使用しているときは、サーバーのフォルダーにナビゲートして、Mac および Linux では ./run.sh、Windows では run.cmd のコマンドを実行してください。

2. アプリケーションの作成

ブラウザー・ウィンドウで、URL http://your-server-host:server-port/mfpconsole をロードして MobileFirst Operations Console を開きます。ローカルで実行している場合は、http://localhost:9080/mfpconsole を使用します。ユーザー名/パスワードは admin/admin です。

  1. アプリケーションの隣の「新規」ボタンをクリックします。
    • Android プラットフォームを選択します。
    • (次のステップでダウンロードするアプリケーション・スキャフォールドに応じて) com.ibm.mfpstarterxamarinアプリケーション ID として入力します。
    • 1.0version の値として入力します。
    • 「アプリケーションの登録」をクリックします。

    アプリケーションの登録

3. アプリケーション・ロジックの編集

  • Xamarin プロジェクトを作成します。
  • Xamarin SDK を SDK の追加チュートリアルで言及されているとおりに追加します。
  • 下記に示すように、IWorklightClient タイプのプロパティーを任意のクラス・ファイル内に追加します。

     /// <summary>
     /// Gets or sets the worklight sample client.
     /// </summary>
     /// <value>The worklight client.</value>
     public static IWorklightClient WorklightClient {get; set;}
    
  • iOS 向けに開発している場合は、AppDelegate.cs ファイルの FinishedLaunching メソッド内に以下のコードを貼り付けます。

     <ClassName>.WorklightClient = WorklightClient.CreateInstance();
    

    <ClassName> をクラスの名前で置き換えます。

  • Android 向けに開発している場合は、MainActivity.cs ファイルの OnCreate メソッド内に以下のコード行を含めます。

     <ClassName>.WorklightClient = WorklightClient.CreateInstance(this);
    

    <ClassName> をクラスの名前で置き換えます。

  • 下記に示すように、アクセス・トークンを取得するようにメソッドを定義し、MFP サーバーへのリソース要求を実行します。

      public async void ObtainToken()
             {
              try
                     {
    
                         IWorklightClient _newClient = App.WorklightClient;
                         WorklightAccessToken accessToken = await _newClient.AuthorizationManager.ObtainAccessToken("");
           
                         if (accessToken.Value != null &&  accessToken.Value != "")
                         {
                             System.Diagnostics.Debug.WriteLine("Received the following access token value: " + accessToken.Value);
                             StringBuilder uriBuilder = new StringBuilder().Append("/adapters/javaAdapter/resource/greet");
           
                             WorklightResourceRequest request = _newClient.ResourceRequest(new Uri(uriBuilder.ToString(), UriKind.Relative), "GET");
                             request.SetQueryParameter("name", "world");
                             WorklightResponse response = await request.Send();
           
                             System.Diagnostics.Debug.WriteLine("Success: " + response.ResponseText);
                         }
                     }
                     catch (Exception e)
                     {
                         System.Diagnostics.Debug.WriteLine("An error occurred: '{0}'", e);
                     }
                 }
             }
      }
    
  • クラス・コンストラクター内で、またはボタンのクリックで ObtainToken メソッドを呼び出します。

4. アダプターのデプロイ

この準備された .adapter 成果物 をダウンロードし、それを MobileFirst Operations Console から 「アクション」 → 「アダプターのデプロイ」 アクションを使用してデプロイします。

あるいは、「アダプター」 の隣の 「新規」 ボタンをクリックします。

  1. 「アクション」 → 「サンプルのダウンロード」 オプションを選択します。「Hello World」 Java アダプターのサンプルをダウンロードします。

    Maven および MobileFirst CLI がインストールされていない場合は、スクリーン内の 「開発環境をセットアップします」 の説明に従います。

  2. コマンド・ライン ・ウィンドウからアダプターの Maven プロジェクト・ルート・フォルダーにナビゲートし、以下のコマンドを実行します。

    mfpdev adapter build
    
  3. ビルドが終了したら、それを MobileFirst Operations Console から 「アクション」 → 「アダプターのデプロイ」 アクションを使用してデプロイします。アダプターは、[アダプター]/target フォルダー内にあります。

    アダプターのデプロイ

5. アプリケーションのテスト

  1. Xamarin Studio で、mfpclient.properties ファイルを選択し、protocolhostport の各プロパティーをご使用の MobileFirst Server の正しい値で編集します。
    • ローカル MobileFirst Server を使用している場合、通常、値は httplocalhost、および 9080 です。
    • リモート MobileFirst Server (Bluemix 上) を使用している場合、通常、値は httpsyour-server-address、および 443 です。
  2. 「再生」 ボタンを押します。


結果

  • 「MobileFirst Server の ping (Ping MobileFirst Server)」 ボタンをクリックすると、「MobileFirst Server に接続 (Connected to MobileFirst Server)」 が表示されます。
  • アプリケーションが MobileFirst Server に接続できた場合は、デプロイした Java アダプターを使用してリソース要求呼び出しが行われます。

その場合、アダプター応答が Xamarin Studio コンソールに出力されます。MobileFirst Server から正常にリソースを呼び出したアプリケーションの画像

次のステップ

アプリケーションでのアダプターの使用、プッシュ通知などの追加のサービスを統合する方法、MobileFirst セキュリティー・フレームワークの使用などについて学習します。

Last modified on August 23, 2017