ad

2014年5月31日土曜日

Facebook API! PHP SDK V4 でFriend List (友達情報?) 取得

2014年4月から5月に変わるあたりに、Facebook のアプリに関する大きな変更が!
ということで調べたのでメモ。

  • Facebook のPHP SDKのバージョンが4に。(その後、順調に更新中!?
  • Facebook のGraph API のバージョンが2に。
2014年5月以降に登録したアプリは、特に注意が必要らしい。
特に GraphAPIの方は、かなり影響が大きい様子。

超意訳:4月30日以降に作ったアプリは、必ずGraph APIのバージョン2にしないとダメなんだ。4月30日前に存在していたアプリはGraph APIのバージョン2と1の両方使えてたさ!
http://stackoverflow.com/questions/23400204/get-facebook-friends-with-graph-api-v-2-0

コメント欄にも記載がありますが、過去のサンプルコードとかが、かなり使えなくなったかもしれないですね。
PHP SDKも修得するには結構厳しいことになってます。新しいバージョンのPHP SDKのサンプルを公開してくれる海外のプログラマーもいたのですが、5月下旬にはVersion4.0.5になり・・・。
4系が落ち着くまで、過去の3系を使った方がよさそうです。ひとまず、サンプルコードを書いてみます。






Composerは使ってません。
使ってないので、適宜 https://github.com/facebook/facebook-php-sdk-v4 からSDKをダウンロードして、 /srcの中のFacebookフォルダを適切な場所に保存してくださいね。
<?php
session_start();

// added in v4.0.5
require_once( 'Facebook/FacebookHttpable.php' );
require_once( 'Facebook/FacebookCurl.php' );
require_once( 'Facebook/FacebookCurlHttpClient.php' );

// added in v4.0.0 
require_once( 'Facebook/FacebookSession.php' );
require_once( 'Facebook/FacebookRedirectLoginHelper.php' );
require_once( 'Facebook/FacebookRequest.php' );
require_once( 'Facebook/FacebookResponse.php' );
require_once( 'Facebook/FacebookSDKException.php' );
require_once( 'Facebook/FacebookRequestException.php' );
require_once( 'Facebook/FacebookOtherException.php' );
require_once( 'Facebook/FacebookAuthorizationException.php' );
require_once( 'Facebook/GraphObject.php' );
require_once( 'Facebook/GraphSessionInfo.php' );

// added in v4.0.5
use Facebook\FacebookHttpable;
use Facebook\FacebookCurl;
use Facebook\FacebookCurlHttpClient;

// added in v4.0.0

use Facebook\FacebookSession;
use Facebook\FacebookRedirectLoginHelper;
use Facebook\FacebookRequest;
use Facebook\FacebookResponse;
use Facebook\FacebookSDKException;
use Facebook\FacebookRequestException;
use Facebook\FacebookOtherException;
use Facebook\FacebookAuthorizationException;
use Facebook\GraphObject;
use Facebook\GraphSessionInfo;


FacebookSession::setDefaultApplication('アプリのID','アプリのシークレットキー');

$helper = new FacebookRedirectLoginHelper( 'このPHPファイルのURL' );

try {
  $session = $helper->getSessionFromRedirect();
} catch(FacebookRequestException $ex) {
 
} catch(\Exception $ex) {
  
}

if ($session) {
  try {
//Facebookの公式開発者ページのサンプルではワンラインになってる部分を3行に分けて。
    $request = new FacebookRequest( $session, 'GET', '/me/taggable_friends');
    $response = $request->execute();
    $graphObject = $response->getGraphObject(); 
echo "<pre>";
    echo  print_r( $graphObject, 1 );
echo "</pre>";
  } catch(FacebookRequestException $e) {
    echo "Exception occured, code: " . $e->getCode();
    echo " with message: " . $e->getMessage();
  }
}else{
  $loginUrl = $helper->getLoginUrl();
  echo '<a href="' . $loginUrl . '">Login</a>';
}

?>



Permissionがどうだ~とか、まだ資料を読み切っていないのですが、ひとまず。
r />



2013年2月25日月曜日

ASUS VivoBook X202e 購入 & バッグが届いた

いい加減,新しいWindowsマシンが欲しいと思い,
ASUS VivoBook X202E をビックカメラで購入.
(他の店の値段を言ったら,それよりも安くしてくれた!感謝)

ASUS VivoBook X202Eの 価格.comへのリンク

購入するにあたって,考慮した点は以下
☆タッチパネル搭載
☆安い
この2点.

Microsoftの秘蔵ッ子,Surfaceちゃんがある以上,タブレットを買う事はちょっと控えておきたいし,タッチパネルでデスクトップは無いだろ,ということでノートに決定.

購入動機のひとつに,他人からWindows8に関する質問をされた場合に答えられないんじゃないかという不安があった.
(実際にタッチパネル搭載機を触ってみると,操作にまごつく.「ワードの立ち上げ方が分からないんですけど?」.パソコン初心者みたいな質問ではあるが,Windows8のタッチ機を触った事のない人はバシッと答えられないんじゃなかろうか…)

X202Eの使用感についてはレビューが価格.comさんの方に沢山あがっているので.特筆すべきことはない.
ちょっと気になるのが,強制シャットダウンというか,急に電源が落ちることだ.
何かの省電力アプリや外部端子のデバイスドライバが適切に動作していないのか,スリープ状態から起こした後,数分使っていると急に「パシュンッ」という音とともにすべてが止る.
これ直し方知ってる方は教えて下さい……
(外部ディスプレイ端子を使って別の大きなディスプレイに映したり,ごちゃごちゃとデバイスを付けてるのがいけないのだろうか…?)

☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆
以前ブーたれてたキャンペーンのバッグが届きました!!

対象となっているASUSのPCを,
2012年12月20日〜2013年2月28日までに購入した場合に応募出来ます.
応募者全員にプレゼントされるそうです.詳細は→リンク

で,実際のバッグなんですが,凄い良いですね…
私がゲットしたのはASUS TERRA SLIM carry bag というやつの14″なんですが,肩掛けバンドが付いてる上に,手提げ部分がしまえるようにポケット構造になっており,インナーケースとしても利用可能.
外側に2ポケット(マグネットの留め具付き),手提げ部分にキーホルダ?が付いているなど,十分な感じ.(キーホルダとして使えるかは….
14″と大きめのバッグなので,ASUS X202Eだとちょっとスペースが出来てしまうが,ペンケースやUSB等の小物入れを入れると良い感じ.

気に入りました!
 

2013年2月21日木曜日

パナソニックのWindows8マシン レッツノートAX2

レッツノートと言えば,タフネス.でお馴染みですね
少し前は,小型で軽量で,ドライブも付いて衝撃に強い…といえば,レッツノートの一強でした.
そのレッツノートにはレッツノートAX2というWindows8を搭載したシリーズがあります.





スペックですが
バッテリ駆動時間:約9時間
頑丈設計:76cm落下試験
となっており,相変わらずのタフネスぶりを保持.
また,SSD搭載で容量は128GBとなっており,重量は約1.14kgとなっている.

当然,ディスプレイはタッチパネルとなっており,タブレットのように使えるのも面白い.
強化ガラスを採用しており,ガッシガッシ使う状況にも耐えられそうだ .

特にCore i5のOfficeモデルの製品情報を見てみると,

☆センサー
・照度センサー
・地磁気センサー
・ジャイロセンサー
・加速度センサー
☆インターフェース
・LANコネクター(RJ-45)
・外部ディスプレイコネクター(ミニDsub 15ピン)
・HDMI出力端子
・マイク入力端子
・オーディオ出力端子
・USB3.0ポート×2

と盛りだくさんだ.


Let's noteは今まで購入した事がないが,
いつかは購入してみたい.



 

2013年2月20日水曜日

レノボのWindows8マシン ThinkPad X1 Carbon Touch

ThinkPadといえば「ヒンジ」部分(蝶番部分)の耐久性が高いことで有名ですが,
そのThinkPadにはThinkPad X1 Carbon TouchというWindows8マシンがあります.
その機体について紹介記事を書こうと思います.




「現段階」でWindows8+タッチパネルのlenovoとなると,候補はこの機体かIdeaYogaとかいうのになります.
やはり「ヒンジ」が強いだけあって,ああいうのが作れるんだなあと感心します.
しかしThinkPadの方は,パッド部分・赤トラックポイント・タッチパネルと,3つもインタフェースが付いてることになるんですね!?
スペックにおいて,特にヒンジについては防塵性能を向上してあるそうです.更にマグネット,ラバーストッパーを配置する事で,適切にディスプレイを閉じることが出来るそうです.
ディスプレイを開け閉めしてるうちにレスト部分が割れてしまうMacb◯○kとはひと味違いそうです.
何より軽さが魅力的ですね.

スペックですが,
ディスプレイ:14.0型マルチ・タッチパネル(10 点)HD+ (1,600×900) LEDバックライト
幅,奥行き:331mm,226mm
ポインティング・デバイス:ウルトラナビ(TrackPoint + クリックパッド), 指紋センサー
となっており,また,ワイヤレスとBluetoothが搭載可能だそうです.
オプションなんですね!