iPhoneアプリ開発 -mixiSDKを使ってmixi連携をしてみる(2)-

公開日: : iPhone, IT, Mac, mixi


 前回

前回は、「ユーザーにAPI利用のための認可」をおこなってもらうところまでやりました。
本エントリーは、その続きになります。

 やりたいこと

今回は、ボイスを投稿するところがメインになります。

 サンプルコード

※すでに、認可が終わっていることが前提になっています。

 ボイス投稿

ボイス投稿は以下のような感じ。

 - (void)post:(NSString *)voice {
     if(![self.mixi isAuthorized]) { //(1)
         return;
     }
     MixiRequest *request = [ MixiRequest postRequestWithEndpoint:@"/voice/statuses"
                                                             body:@"application/x-www-form-urlencoded"
                                                    paramsAndKeys:voice,
                                                                  @"status",
                                                                  nil];
  [self.mixi sendRequest:request delegate:self]; //(2)
 }

self.mixiに[Mixi sharedMixi]の値が入っています。

(1)の説明
最初に認可状態を確認しています。
ここではreturnしていますけど、本来なら再度認可させるように遷移させるのがベターかと思います。

(2)の説明
デリゲート先を設定しておきます。
APIの呼び出しが成功したり失敗したりすると以下の各メソッドが呼び出されます。
※ちなみに、他にもありますが今回はこの3種類だけで。

 //呼び出し成功
 -(void)mixi:(Mixi*)mixi didSuccessWithJson:(NSDictionary*)data {
 }
//呼び出し失敗
 -(void)mixi:(Mixi*)mixi didFailWithConnection:(NSURLConnection*)connection error:(NSError*)error {
 }
 //実行失敗
 -(void)mixi:(Mixi*)mixi didFailWithError:(NSError*)error {
 }

 ボイスに画像添付して投稿

画像を添付して送りたい場合は以下の様な感じ。

 - (void)post:(UIImage*)image setVoice:(NSString *)voice {
  if(![self.mixi isAuthorized]) {
   return;
  }
  MixiRequest *request = [MixiRequest postRequestWithEndpoint:@"/voice/statuses"
                                                         body:image
                                                paramsAndKeys:@"image/jpeg",
                                                              @"Content-Type",
                                                              voice,
                                                              @"status",
                                                              nil];
  [self.mixi sendRequest:request delegate:self];
 }

大きな違いは、bodyにUIImageを設定しているところです。
特に何かしらの処理は必要なくて、UIImageをそのまま使えるのは非常に楽です。

広告

関連記事

スクリーンショット 2012-10-20 14.26.24

iPhoneアプリ開発 −UITabControllerの利用−

* やりたいこと 上にあるように下部にあるタブをタッチしたら別のページを呼び出す。 * 

記事を読む

no image

iPhoneアプリをヒットさせるために大事な5つのこと

巷にはたくさんのiPhoneアプリがたくさんあります。 そして、毎日新しいアプリがリリースされていま

記事を読む

no image

CakePHP1.3でスマートフォン対応

CakePHP1.3でスマートフォン対応のためにやったことをメモしておきます。 * 環境 -

記事を読む

no image

CAPTCHAの導入方法 -KCAPTCHAの導入-

CakePHP(1.2、1.3)にKCAPTCHAを導入してみたのでメモ。 * CAPTCHA

記事を読む

iPad(Retinaディスプレイモデル)にiOS7を入れてみた

iPadにiOS7を入れてみたので、その報告。 iPhone5にはまだ入れておかないでおこうと思っ

記事を読む

iPhoneアプリ開発 芳名帳アプリ作成(1) -最初の一歩-

* 作るアプリ 結婚式や2次会で「自分の名前を書く」芳名帳 これをアプリで作ってみます。

記事を読む

no image

iPhoneアプリ開発 芳名帳アプリ作成(3) -名前を書けるようにする-

* 今までの流れ - -[http://pplace.jp/2013/06/1531/:title=

記事を読む

no image

「Google Apps」無償版の新規登録が終了

以前、「Google Apps」を利用した以下の記事を書きましたが、とうとう無償版の新規登録が終了

記事を読む

no image

CakePHP1.3でテストコード(1) -モデルのテスト-

CakePHP1.3ではSimpleTestを用いてテストコードを書きます。 ※CakePHP2系で

記事を読む

no image

jQuery Mobileでdata-role=headerを使うときの注意点 -勝手にタイトルが変更される件-

* 現象 +headタグでtitleタグで文字列(A)を記述している +data-role=he

記事を読む

広告

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

広告

no image
[感想] Effective Objective-C 2.0 ☆☆☆☆★(4.5)

* 構成 - 第1章 Objective-Cに慣れる -

no image
[感想] iOSアプリテスト自動化入門 ☆☆☆(3.0)

* 構成 - Chapter 1 テスト自動化への取り組み

DeployGateを試してみた(iOS編) -DeployGateがiOSに対応-

今までのDeployGate - -[http://pplace.

iPhone/iPadアプリを開発するためにやったこと

今までに、iPhoneを3本ほどリリース((リリースしたアプリは全て1

no image
ターミナルでgitのコマンドを補完したりブランチ名を表示する – macでgitを便利に使うために –

* やりたいこと macのターミナルでgitをいじっていると -今の

→もっと見る

PAGE TOP ↑