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());
}
});
}
実行すると次の画面が表示されます。



