手邊的一個專案進了測試,Android 工程師打包好給我測以後,一直出現 Invalid Scopes: user_status, publish_actions 的問題。

由於 Android 工程師無法重製這個問題,於是我們花了一些時間在除錯。

首先先猜 Android 不同機種的問題,但是因為串的是同一版本的 Facebook SDK for Android ,所以排除。

接下來猜不同帳號才會有這個問題,果然使用「測試角色」就不會出現這個問題了,而「開發人員」自己的帳號也不會,但是「管理者」會出現這個提示。

於是就開始一連串的 google 。

最後用的是 Facebook Graph API Explorer ,預設會是 v14.0 。

左邊有個「搜尋欄位」,找到 permissions ,然後把裡面子項目的 limit, permission, status 都選起來,然後點右上角的「提交」,就可以看到以目前身份所允許或拒絕的權限。結果發現我們申請的應用程式拿不到 user_statuspublish_actions 這兩種權限。

翻了一下目前的 Facebook 權限參考資料文件,發現 user_statuspublish_actions 都已經不在列表上了;根據 Facebook 官方部落格文章, publish_actions 已經在 2020/02/01 被棄用。但是官網的「取得其他權限」段落裡附的範例程式碼,都還有用 user_status 當例子:

Facebook Android SDK  user_status 範例程式碼

總之最後請 Android 工程師移除掉程式碼裡的 user_statuspublish_actions ,就解決問題了。


    repeat :D 發表在 痞客邦 留言(0) 人氣()