Tag Archive for Viewer

mixiアプリ作成入門(5) – マイミク情報を取得する - mixiアプリ作成入門(5) – マイミク情報を取得する -のはてなブックマーク被リンク数

前回は、ユーザのプロフィール情報の取得方法についてご紹介しました。
さまざまな種類のプロフィール情報を取得することによって、mixiアプリの作成の幅が広がったかと思います。

前回までは「Owner」または「Viewer」単体のプロフィール情報の取得についてご紹介しておりましたが、その他、mixiアプリではそのマイミクのプロフィール情報も取得することができます。
今回はその方法についてご紹介してみたいと思います。

まずは以下にサンプルとして、マイミクの名前を一覧を表示するmixiアプリのサンプルコードを記述します。
こちらも、mixi Developer Center上に公開されているサンプルを参考にしています。

<?xml version=”1.0″ encoding=”UTF-8″ ?>
<Module>
<ModulePrefs title=”マイミク一覧”>
<Require feature=”opensocial-0.8″/>
</ModulePrefs>

<Content type=”html”>
<![CDATA[

<div id="friends"></div>

<script type="text/javascript">// <![CDATA[
var params = {};
params[opensocial.IdSpec.Field.USER_ID] = opensocial.IdSpec.PersonId.OWNER;
params[opensocial.IdSpec.Field.GROUP_ID] = “FRIENDS”;
var idSpec = opensocial.newIdSpec(params);

var req = opensocial.newDataRequest();
req.add(req.newFetchPeopleRequest(idSpec), “friends”);
req.send(function(data) {
output = “”;
if (data.hadError()) {
var msg = data.getErrorMessage();
output += msg // エラー時は、とりあえずエラーメッセージをそのまま表示させる
} else {
var friends = data.get(“friends”).getData();

friends.each(function(friend) {
var id = friend.getId();
var name = friend.getDisplayName();

output += name + ‘<br />’;
});
}
document.getElementById(‘friends’).innerHTML = output;
});

</script>

]]>
</Content>
</Module>

マイミク情報を扱う際は、opensocial.IdSpec オブジェクトを使用します。
これにより、以下の 3 つの条件を指定することができます。

  • USER_ID – 基準となるユーザのID
  • GROUP_ID – ユーザ間の関係
  • NETWORK_DISTANCE – 基準ユーザからの関係の距離

mixiアプリでは、GROUP_IDに「SELF(USER_IDで指定されたユーザ自身)」または「FRIENDS(マイミク)」を指定することができます。
また、NETWORK_DISTANCE は、mixiでいうと 1 でマイミク、2 でマイミクのマイミクを示しますが、mixiアプリで取得可能なものはマイミクの一覧ですので、NETWORK_DISTANCE は常に 1 となります。

マイミク情報は、newFetchPeopleRequest() 関数を呼び出して取得します。
単体のプロフィール情報を取得する際は newFetchPersonRequest() で「Person」でしたが、マイミク情報の場合は「People」と複数形ですね。
「People」になっても、この関数で取得可能な情報は同じです。

  • ID
  • ニックネーム
  • プロフィール写真

この 3 種類でしたね。

DataRequest オブジェクトの主な使い方は newFetchPersonRequest() 関数の場合と同じなので、マイミク情報を取得するからといって特に難しくなるようなことはありません。
但し、取得結果が複数になるので、取得後はそれに応じた処理を行うことになります。

さて、早速アプリを作成し、mixi上でマイミクの名前が一覧表示されるのをしてみましたか?
もしかしたら、マイミク一覧のはずなのにちょっと少ないな・・・とお気付きになられたかたがいらっしゃるかもしれません。
そう、実はデフォルトでは、マイミク情報は 20 件しか表示されないんです!

そんなわけで、次回はその解決方法として、一覧表示やページ送り処理方法についてご紹介したいと思います。

Post Footer automatically generated by Add Post Footer Plugin for wordpress.

このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加