2015-09-01 21 views
13

Tôi đang sử dụng SDK Facebook v4.6.0 cho iOS 9 trong ứng dụng Swift đơn giản để add a login button vào ứng dụng của tôi (Tôi đã làm theo các bước trong Preparing Your Apps for iOS 9).Nút đăng nhập Facebook SDK 4.6 trên iOS không sử dụng ứng dụng Facebook để xác thực

Nút đăng nhập luôn mở Safari để xác thực và không bao giờ sử dụng ứng dụng Facebook gốc. Đây có phải là hành vi dự kiến? Có thể sử dụng ứng dụng gốc (nơi nhiều người dùng đã được xác thực) thay vì truy cập trực tiếp vào đăng nhập web không?

Tôi đã thử nghiệm ứng dụng trên iPhone của mình bằng cách tạo và chạy bằng XCode và với bản dựng được phân phối bởi TestFlight. Nó luôn mở Safari để xác thực, mặc dù tôi đã cài đặt và cấu hình ứng dụng gốc.

Tôi tìm thấy this relevant question nơi câu trả lời dường như chỉ áp dụng cho SDK 3.x. Tôi cũng đã tìm thấy các câu hỏi khác có tham chiếu đến cấu hình tryFBAppAuth hoặc authorizeWithFBAppAuth dường như áp dụng cho các trường hợp cạnh trên các phiên bản trước của FB SDK. Tôi đã không tìm thấy câu trả lời rõ ràng cho 4.6.

Trả lời

1

Bạn đang biên soạn với iOS9 SDK (XCode 7.x)? Như đã đề cập trong FB's iOS9 preparation page bạn nên biên dịch với SDK mới cho chính sách chuyển đổi ứng dụng sẽ diễn ra.

+0

Bắt tốt. Những thứ này ... – Wiz

6

Bạn cần đưa vào danh sách trắng ứng dụng gốc của Google+. Trong info.plist của bạn, hãy đảm bảo rằng bạn có mục nhập sau

<key>LSApplicationQueriesSchemes</key> 
    <array> 
    <string>fbapi</string> 
    <string>fbapi20130214</string> 
    <string>fbapi20130410</string> 
    <string>fbapi20130702</string> 
    <string>fbapi20131010</string> 
    <string>fbapi20131219</string>  
    <string>fbapi20140410</string> 
    <string>fbapi20140116</string> 
    <string>fbapi20150313</string> 
    <string>fbapi20150629</string> 
    <string>fbauth</string> 
    <string>fbauth2</string> 
    <string>fb-messenger-api20140430</string> 
    </array> 

Trừ khi bạn đưa vào danh sách trắng url, ứng dụng iOS của bạn sẽ không thể chuyển sang ứng dụng đó. SDK facebook sẽ hiển thị Safari thay vì ứng dụng gốc trong trường hợp đó.

+0

thx một tấn, chỉ sửa chữa mà làm việc cho tôi – tennis779

Các vấn đề liên quan