2014-06-12 55 views
1

我有一個facebook用戶的app_scoped_user_id列表,它存儲在我們的數據庫中,當應用程序請求查看配置文件的權限時,由我們的應用程序返回。Facebook - 通過app_scoped_user_id打開配置文件

我可以通過打開http://facebook.com/app_scoped_user_id/(id)打開配置文件。

如何獲取iOS應用程序以打開本機Facebook應用程序並通過ID查看配置文件?

fb:// profile /(id)不起作用,因爲該頁面需要「Facebook ID」,它不是app_scoped_id。

我在這裏做什麼?我不明白爲什麼這是不可能的。如果我在瀏覽器中打開facebook.com/(app_scoped_id),它就會起作用。如果我在應用中將該頁面作爲「文本視圖中的鏈接」打開,則會打開一個空白頁面(不知道爲什麼會發生事件?)。如果我打開facebook.com/events/valideventID - 它會打開正確的事件。

我只是想根據他/她的應用程序作用域ID在應用程序中打開用戶的Facebook配置文件。

+0

我會在https://developers.facebook.com/bugs – WizKid

+0

上提交一個bug我不認爲這是一個錯誤。它與Graph V.2之後的應用程序ID和用戶ID分離有關,但我無法弄清楚如何解決這個問題 - 這看起來有點愚蠢,因爲這樣做絕不會阻止我查看任何人的配置文件。所有這一切使它不那麼方便。 – nickdnk

+0

對我來說,這聽起來像一個錯誤,您無法使用應用程序範圍用戶標識 – WizKid

回答

3

正如在https://developers.facebook.com/bugs/332195860270199的錯誤報告中所述,不支持使用fb:// profile?app_scoped_user_id =%@打開Facebook配置文件。

您必須在Safari中打開Facebook配置文件(http://facebook.com/%@)。這很煩人,但作爲一種解決方法...

也許你可以在bug報告下評論你需要這個功能,就像我一樣。

除了使用Safari,您還可以使用應用程序內網頁瀏覽器。這是我會嘗試的。

+0

我剛剛添加了一個來自Sam Vermette的應用程序Web瀏覽器:https://github.com/TransitApp/SVWebViewController。它完美無瑕,正是我所期待的。 – Lennart

+0

NSString * fbProfile = [NSString stringWithFormat:@「http://facebook.com/%@」,profileId]; SVModalWebViewController * webViewController = [[SVModalWebViewController alloc] initWithAddress:fbProfile]; [self presentViewController:webViewController animated:YES completion:NULL]; – Lennart