iT邦幫忙

DAY 6
0

30 天實戰跨平台行動APP系列 第 6

Day 5 : Facebook api permission

FB 說明頁面

https://developers.facebook.com/docs/facebook-login/permissions/v2.1

現在懂得如何使用FB登入功能了,接下來的目標就是取得用戶及用戶朋友的資料。

但是取得的資料種類是有限制的,除了 public_profile, email and user_friends這三種資料以外,

都必須要經過Facebook的審核。但是你或許會有疑問,這樣子要如何進行開發呢?

答案就是若你測試App的用戶就是該App 的developer,就不需經過審核唷。

取得權限

取得權限的時機可以在登入時要求,或是在使用App時提出權限要求。原則上當然是僅要求你所需要的資料,

因為我想大家都有經驗,看到“xxx要求取得你的xxx資料"你很自然地就會有抗拒的心理。官方是說要求越多權限,

會使用你的App的人數數量就越少,所以在要求權限上面有一些原則:

  1. 只取得你App中必要的權限
  2. 取得權限前先跟使用者說明為何你需要他開放這項權限
  3. 能用public_profile替代的就儘量用
  4. 將讀取與寫入的權限分開要求

只能說儘量不要讓使用者產生抗拒的心理!最好在一開始登入的時候僅要求最基本的資料,

登入後在說明為何需要其他權限,再請用戶開放,這樣子漸進式的要求會比較好。

檢查權限的有效性

Facebook可以讓它的用戶開啟關閉他對App開放的權限,所以並不是登入後,權限就一定會保持有效。

所以在做動作之前,就要先檢查權限的有效性,並且App也要應對若權限無效時該怎麼處理。

權限的種類

不需要review

[*]Public profile (default) permissions : 最基礎的用戶資料,也是預設要求的權限
[*]App friends :你的朋友清單中也有使用這個App的人
[*]Email permissions:email

需要review

[*]Extended profile properties:更深入的用戶資料
[*]Extended permissions:例如貼文至塗鴉牆
[*]Open Graph permissions:取得open graph story
[*]Page permission:可以控制該用戶使管理者的用戶專業

以下就列出我們這個App所需要的權限

public_profile 基本資料

user_friends 朋友清單

email

user_location 為了顯示用戶所在地

user_photos 顯示用戶照片

user_status 用戶狀態

user_tagged_places 用戶去過的地方

user_videos 用戶被tag的影片

read_stream 可以讀取用戶的塗鴉牆

大概就是這些了!


上一篇
Day 5 : Facebook api - 手動建立登入流程
下一篇
Day 7 Facebook API : Graph API
系列文
30 天實戰跨平台行動APP26

尚未有邦友留言

立即登入留言