2014-01-05 78 views
5

用戶可以使用我的應用程序在Facebook上發佈消息。 iOS首次向用戶展示權限對話框(「foo應用程序想以您的名義私人發佈」 - 不允許/確定)。現在看來,這個決定是一個持久的決定。一旦這種對話以任何方式完成,用戶將永遠不會再被問到。一旦被用戶拒絕,如何重新請求權限

現在,因爲這可能發生了錯誤,我認爲這對用戶來說不夠好。有沒有辦法以某種方式從代碼中啓動此權限對話?

+0

即使我從模擬器中刪除應用程序,並再次從Xcode運行它,權限對話框不會再顯示。只有當我刪除我的Facebook帳戶並重新創建時纔會重新顯示 – Janos

+0

好的,我想我知道答案。用戶可以在Privacy/Facebook下訪問給定的應用程序。如果他們拒絕訪問,應用程序將被列爲「關」,並且可以將其打開(這相當於授予訪問權限)。 – Janos

回答

4

不可以。您可以創建自己的對話框,告訴用戶他們必須轉到設置應用以更改隱私設置。

+0

是的,如果您檢查是否授予給定帳戶的訪問權限。我不明白的是,如果用戶拒絕或接受許可請求,會發生什麼。現在我知道您的應用程序已列在給定帳戶(Facebook或Twitter等)下,並且它具有開/關開關,告訴您您是否已授予該應用程序的訪問權限。 – Janos

+1

在某人拒絕該權限後,我們在獲取當前地理位置方面遇到類似問題。解決方法是在調用'getCurrentPosition'時處理錯誤回調,並檢查是否存在'error.code === PositionError.PERMISSION_DENIED'([docs](http://docs.phonegap.com/en/3.0.0/cordova_geolocation_geolocation。 md.html#PositionError)),根據此答案顯示相應的錯誤消息。 –