mixiアプリ » 技術仕様(Graph API方式) » mixi API SDK for iOS » APIの利用
APIの利用
API にアクセスするメソッドは複数ありますが、代表的なメソッドはMixi#sendRequest:delegate: です。本メソッドを利用して、統一された方法で様々なAPIをコールすることが可能です。
ここでは、APIを呼び出すためのsendRequest:delegate:メソッドの簡単な例を紹介します。各APIに必要なパラメータの意味や戻り値など個々のAPIに関する詳細情報については、SDKに添付されているリファレンスを参照してください。
APIはエンドポイントとパラメーターを設定したMixiRequest
インスタンスを、Mixi#sendRequest:delegate:
メソッドに渡すことで実行します。
API実行前に認可が完了しているかどうかを確認して、未認可の場合は先に認可しておきます。認可に失敗した場合はmixi公式アプリがインストールされていないか、最新版ではない可能性があるので、AppStoreのmixi公式アプリのページを開きます。
if ([mixi isAuthorized]) {
MixiRequest *request = [MixiRequest requestWithEndpoint:@"/people/@me/@friends"];
[mixi sendRequest:request delegate:mixiDelegate];
}
else if (![mixi authorizeForPermission:@"r_profile"]) {
MixiWebViewController *vc = MixiUtilDownloadViewController(self, @selector(closeDownloadView:));
vc.orientationDelegate = self;
[self presentModalViewController:vc animated:YES];
}
API実行結果はsendメソッド群の引数に与えていたMixiDelegate
プロトコルを実装したデリゲートで処理します。
例えば、APIの実行結果をAlertViewで表示するには次のようなデリゲートメソッドを定義したクラスのインスタンスをsendRequest:delegate:メソッドの引数に与えます。
- (void)mixi:(Mixi*)mixi didFinishLoading:(NSString*)data {
MixiUtilShowMessageTitle(data, @"実行結果");
}
上記以外のデリゲートメソッドについてはMixiDelegate
のドキュメントを参照してください。