Facebookシェアのサンプルアプリを作成する-準備編-

本当は実一気に書こうと思っていたのですが長くなりそうなので準備編と実装編に分けます。
準備編ではFacebook SDKを使ってFacebookシェアを実現するサンプルアプリを作る過程のうち、facebook for developers登録などの実装以外のことについて書こうと思います。

# アカウントを作成する

## Facebookアカウントを作成する

まずはアカウントを作るところから始めます。[developerサイト](https://developers.facebook.com/)に行くとこんなかんじになっているので、右上部の「登録」（Facebookアカウントがブラウザに保存されている場合）、もしくは「ログイン」（保存されていない場合）ボタンをクリックします。
![スクリーンショット 2016-04-18 21.35.20.png](https://qiita-image-store.s3.amazonaws.com/0/100736/416b9303-4578-477b-cc1d-94f77382a88c.png)
今回は一応Facebookアカウントを取得するところから書きます。
![スクリーンショット 2016-04-18 21.45.55.png](https://qiita-image-store.s3.amazonaws.com/0/100736/a483fba0-e5d2-2a61-008d-afc36dd0fa14.png)
メール認証を行えばすぐにFacebookのアカウント登録はできます。

## facebook for developersアカウントを作成する

ただ、これだけだとdeveloper登録ができていないので、再度[developerサイト](https://developers.facebook.com/)に行きます。右上のボタンが「登録」になっているはずです。
クリックするとパスワードの再入力を促す画面か今使っているアカウントをdeveloper登録するかを聞く画面が出てくると思うので、よろしく設定します。
■パスワードの再入力を促す画面
![スクリーンショット 2016-04-18 22.18.14.png](https://qiita-image-store.s3.amazonaws.com/0/100736/a5cb12e6-83c0-cc42-096a-d5dce9848437.png)

■今使っているアカウントをdeveloper登録するかを聞く画面
![スクリーンショット 2016-04-18 22.25.46.png](https://qiita-image-store.s3.amazonaws.com/0/100736/1b749e09-f796-9bc5-22b9-48566d86066a.png)

もしFacebookアカウントを取得するときに電話番号ではなくメールアドレスで登録していた場合はこのタイミングで電話番号の入力を求められるので入力、認証をします。
![スクリーンショット 2016-04-18 22.31.14.png](https://qiita-image-store.s3.amazonaws.com/0/100736/8ebfcf65-d8d9-c1b3-2916-fef20afe338a.png)
無事下の画面が出ればFacebookのdeveloperアカウントの取得は完了です。
![スクリーンショット 2016-04-18 22.40.51.png](https://qiita-image-store.s3.amazonaws.com/0/100736/61418cee-ee06-859a-5c68-31fc846dee62.png)

# アプリ設定

どのプラットフォームでFacebookを利用するのかを聞かれます。今回はiOSを選択します。
![スクリーンショット 2016-04-18 22.46.47.png](https://qiita-image-store.s3.amazonaws.com/0/100736/67baff79-a9e1-90d9-ee3b-f968415e2fa4.png)

するとこのような画面が現れます。今回新しくFacebook SDKを使ったアプリを作るので、新しいアプリ名を入力します。
![スクリーンショット 2016-04-18 23.00.13.png](https://qiita-image-store.s3.amazonaws.com/0/100736/c4216e27-ec0f-277f-0f59-9b47cf08402d.png)
入力するとこのような表示が出てくるので「新しいFacebookアプリIDを作成」をクリックします。
![スクリーンショット 2016-04-19 0.01.03.png](https://qiita-image-store.s3.amazonaws.com/0/100736/939ff6e9-ec8e-654b-14a7-65936421c4c6.png)
今度はこのような表示が出てくるので、メールアドレスの入力、カテゴリの選択をしてIDを作成します。
![スクリーンショット 2016-04-19 0.27.34.png](https://qiita-image-store.s3.amazonaws.com/0/100736/5ee9a524-1564-96b2-51f3-69c63d577ef1.png)
ここまでできれば準備としては完了になります。

# developerページのざっくりとした紹介

右上部のマイアプリにマウスをあてると以下のドロップダウンが出てきます。
![スクリーンショット 2016-04-23 13.12.14.png](https://qiita-image-store.s3.amazonaws.com/0/100736/88a624f1-c9f5-a218-67e0-9255cd08ebf6.png)
自分のアプリ名をクリックするとそのアプリのダッシュボードページに遷移します。
![スクリーンショット 2016-04-23 13.25.23.png](https://qiita-image-store.s3.amazonaws.com/0/100736/43fa2b21-f854-b14e-1bcd-0f5dc041edb0.png)

これ以下、主要なページを説明します。

## ダッシュボード

各アプリのトップページみたいなものです。
以下の2つの項目の他に、簡単なAnalytics情報が載っています。

### Facebook SDKのクイックスタート

Facebook SDKを使って実装するためのスタートガイドが書かれているページヘのリンクになります。次回の実装編で詳しくなぞっていきます。

### Facebook Analytics

画面はこのようになっています。
![スクリーンショット 2016-04-23 13.24.08.png](https://qiita-image-store.s3.amazonaws.com/0/100736/56cdadc7-e9fe-4236-f534-d0440932b04d.png)
結構いろんな項目の値を見ることができます。この画面へはAnalyticsタブをクリックすることでも行くことができます。
詳しく知りたい人は公式の[アプリ用Analytics](https://www.facebook.com/help/analytics/1710582659188030/)を見るといいと思います。

## 設定

その名の通りで、いろいろな設定をする画面になります。ベーシック設定と詳細設定があります。

## アプリレビュー

自分が作ったアプリに対してのレビュー、ということではなく、Facebookに審査を出して見てもらうという意味でのアプリレビューです。
審査の必要がなく、デフォルトで使用することができるのはemail, public_profile(利用者の氏名、プロフィール写真、性別、年齢層などの基本情報), user_friends(利用者の友達でアプリを利用している人のリスト)の3つです。
その他の権限が必要であれば申請をする必要があります。アプリレビューについては公式の[アプリレビューページ](https://developers.facebook.com/docs/apps/review)を参考に。

## アプリ詳細

Webで検索した人が自分のアプリを見つけられるようにするための情報を入力します。また、ここに載せた情報はFacebookアプリ審査でもチェックされるようです。

## Open Graph

Open Graphに関する設定をする画面です。Open Graph ProtocolとはSNSでシェアされた時にタイトル、URLなどを自分が意図した通りに表示させる仕組みです。Open Graph関連については[公式のカスタムOpen Graph storyの作成](https://developers.facebook.com/docs/sharing/opengraph/custom)を参考に。

## テストアプリ

アプリを作っているとRelease、Debug用で設定値を変えることがあると思います。その際、新しいアプリ(今回の例だとSocialShareSampleDebugのようなもの)を作らなくてもこのテストアプリというものを作成すればある程度の設定を引き継いで新しいIDを取得することができます。
詳しくは
- [Facebookアプリ「Test Apps」機能について調べてみた](http://snowadays.jp/2014/09/2887)
- [Facebookアプリのテストユーザーの作り方手順](http://qiita.com/ampersand/items/a96449cd25886a6d05fb)
- 公式[Test Apps](https://developers.facebook.com/docs/apps/test-apps)
などで。