FlexGridからREST APIを呼び出す
FlexGridのサンプルを改造して、REST APIを呼び出します。今回添付したサンプルコードは前回ご紹介したソースをベースにしています。
サンプルコードでは、REST APIを呼び出すため以下のファイルを修正しています。これ以外のファイルは、特に操作する必要はありません。
-
Azure Mobile Apps SDK への参照を追加。REST APIを呼び出すために使用する。
- build.gradle
-
REST APIの結果を格納するクラスを追加。
- Population.java
- Populations.java
-
結果を表示するアクティビティを追加。
- activity_population.xml
- PopulationActivity.java
-
サンプルアプリの初回起動画面の機能選択に人口推移を追加。
- SampleListAdapter.java
このうち、「PopulationActivity.java」ファイルのonCreate()メソッド中にあるURLを、先ほど作成したREST APIに変更してください。
mClient = new MobileServiceClient( "https://f1fc8841-0ee0-4-231-b9ee.azurewebsites.net", this);
Azure Mobile Apps SDKを使用して、REST APIを呼び出し、結果は「Populations」に格納されます。具体的には次のような実装になっています。
private void getPopulationFromInternet(View view) { ListenableFuture<Populations> result = mClient.invokeApi( "population", "GET", null, Populations.class ); Futures.addCallback(result, new FutureCallback<Populations>() { @Override public void onFailure(Throwable exc) { // 失敗時に呼び出される。 createAndShowDialog((Exception) exc, "Error"); } @Override public void onSuccess(Populations result) { // 成功時に呼び出される。 mGrid.setItemsSource(result.getPopulations()); } }); }
実行すると次の画面が表示されます。