【Unity】Facebook SDKを使ってFacebookに画像をシェアする

今回からはSNSに投稿する方法について書いていきます。まずはじめにFacebookに画像をシェアする方法について書きます。

パッケージをインポートする

まずはじめにUnityのFacebook SDKをインポートします。Facebookのページからダウンロードします。この時ページの言語設定が日本語だと最新のSDKをダウンロード出来ないので、英語にする必要があります。

パッケージがダウンロード出来たらすべてインポートしてしまいます。今回使用したSDKバージョンは7.1.0です。

 

Facebookにアプリを登録する

Facebook SDKを使うためにはFacebookにアプリを登録する必要があります。まず、デベロッパーページに行き、上部メニューのMy Appsを選択します。もし開発者登録がされていなければこのような画面になるので、Register Nowを押して開発者登録をします。

 

利用規約に同意し、開発者登録が済むとこのような画面になるので、iOSかAndroidを選択します。今回はiOSを選択しました。

OSを選択すると、このような画面になるので、アプリの名称を入力しFacebook App IDを作成します。

また、カテゴリーを聞かれるので作成するアプリに沿ったものを選択します。

 

これでアプリが登録できました。

UnityのFacebook SDKにApp IDを設定する

作成したアプリのApp IDをUnityに登録していきます。パッケージをインポートすると、メニューにFacebookが増えているので、FacebookのEdit Settingsを選択します。すると、Inspectorに設定画面がでてくるので、そこのApp NameとApp IDに今作ったものをそれぞれ入力します。App IDはMy Appsから作成したアプリを指定すると開くページに記載してあります。

 

Facebookにシェアするスクリプトを作成する

次は実際にFacebookにシェアするためのスクリプトを作成します。まずは名前空間にFacebookとFacebook.UnityとSystem.Collections.Genericを追加します。シェアを行うのはFBクラスなので、初期化されていなければ初期化します。

次に、初期化されたあとFacebookにログインするための処理を書いていきます。今回画像のシェアを行うため、ログインはLogInWithPublishPermissionsを使用し、Publish Actionの使用許可を同時に求めます。

 

そしてFacebook.APIを使用して画像をPOSTします。画像はAssets/Resourceフォルダに配置してあります。Resourceフォルダに置くことで、Resources.Load()メソッドを使って読み込む事ができるようになります。読み込んだ画像はbyte配列に変換し、WWWFormにバイトデータとして追加しています。

 

これで任意のタイミングでfacebookShareAction()メソッドを呼び出すことで画像がシェアされるようになります。

 

終わりに

今回はFacebookに画像をシェアする方法について書きました。今回書いた内容はシェアする方法のうちの一つで、他にはダイアログを出したりする方法もあります。ちなみにこの方法だとアプリがユーザーに変わって投稿しているので、Facebookに審査に出す必要があります。

 

 

 

今回はFacebookだったので、次回はTwitterに投稿する方法について書いていこうと思います。

 

 

では、また。

 

●この記事を書いた人