Интеграция Trigger.io с Facebook неожиданные разрешения на чтение на некоторых устройствах iOS

На iPad с iOS 6 появляется диалоговое окно модальных разрешений Facebook, но когда оно принято, кажется, что оно ничего не делает.

В наших журналах появляется следующая ошибка:

Jan 16 11:57:50 CloudPad Forge[21287] <Warning>: [DEBUG] Native call: {
        callid = "2CB2131C-771C-466D-9640-D1FF99AB3E4B";
        method = "facebook.authorize";
        params =     {
            dialog = 1;
            permissions =         (
                "user_photos",
                "publish_stream",
                email
            );
        };
    }
Jan 16 11:57:50 CloudPad Forge[21287] <Warning>: FBConditionalLog: FBSession: a permission request for publish or manage permissions contains unexpected read permissions

Jan 16 11:57:53 CloudPad Forge[21582] <Warning>: [DEBUG] Returning to javascript: {
        callid = "EE3606FC-84D6-4F3F-8BC6-82FAF3BEC5EF";
        content =     {
            message = "The operation couldn\U2019t be completed. (com.facebook.sdk error 2.)";
            subtype = "<null>";
            type = "UNEXPECTED_FAILURE";
        };
        status = error;     }

Одно и то же приложение отлично работает с авторизацией Facebook на разных устройствах, на некоторых iOS 6, на некоторых других.

Халп!


person Daniel X Moore    schedule 16.01.2013    source источник


Ответы (1)


Похоже, вы запрашиваете разрешения на чтение (user_photos и email) и запись (publish_stream) в одном и том же вызове — это не поддерживается в iOS SDK, см. здесь:

https://developers.facebook.com/docs/howtos/ios-6/

Обратите внимание: чтобы использовать встроенную аутентификацию iOS 6, приложения должны изменить способ запроса разрешений у пользователей — приложения должны разделять свои запросы на чтение и запись разрешений. Facebook SDK для iOS поддерживает эти функции и помогает разработчикам использовать их для создания приложений, которые работают на различных версиях iOS и конфигурациях устройств.

person Igy    schedule 16.01.2013
comment
Странно то, что тот же код работает на другом устройстве iOS 6. Есть ли конкретная версия официального приложения FB, на которую мне следует обратить внимание? Имеет ли значение, установлено ли на устройстве официальное приложение FB? - person Daniel X Moore; 18.01.2013
comment
Это работает на другом устройстве для того же пользователя? и оба устройства вошли/не вошли в Facebook через интеграцию с iOS6? В документах довольно подробно говорится о том, что нельзя запрашивать разрешения на чтение и запись одновременно, если вы используете интеграцию с iOS6, а обычное диалоговое окно аутентификации, отличное от iOS6, теперь применяет разрешения на чтение и запись на отдельных страницах диалогового окна аутентификации, так что это то, что вам нужно. необходимо учитывать независимо от того, как ваши пользователи входят в систему - person Igy; 18.01.2013
comment
@Igy Привет! Итак, как мне запросить оба этих разрешения? Я могу сделать это из веб-приложения, а не из iOS. - person Isuru; 27.03.2014