iphone: диалоговое окно facebook появляется и исчезает сразу, используя sharekit - PullRequest
2 голосов
/ 11 октября 2011

Я успешно интегрировал sharekit в свое приложение.Сначала я смог запустить и запустить Facebook, войти в систему и опубликовать его, но проблема была в том, что твиттер не смог опубликовать сообщение «не могу авторизоваться с помощью oauth», поэтому я добавил одну строку в shktwitter.m

// this is the error message for revoked access
        if ([errorMessage isEqualToString:@"Invalid / used nonce"] || [errorMessage isEqualToString:@"Could not authenticate with OAuth."])
        {
                self.pendingAction = SHKPendingShare;
            [self sendDidFailShouldRelogin];
        }

оттуда я смог написать из твиттера без проблем, и теперь главная причина этого поста заключалась в том, что проблема с фейсбуком.Каждый раз, когда я нажимаю на кнопку «Поделиться» на «Фейсбуке», он открывает диалоговое окно (весь белый экран с синей верхней панелью в стиле «Фейсбук» по умолчанию) и сразу закрывает его.Я очистил цели, перезапустил симулятор, перезапустил xcode, все, что я могу придумать, чтобы он работал как в первый раз, но все еще дает мне тот же результат.Я изменяю только одну строку кода (упомянуто выше), но я предполагаю, что это никак не повлияет на диалог Facebook, поскольку он находится в diff.учебный класс.Я искал вокруг, но все ответы, которые я нашел, не решают мою проблему.Там нет ошибки, и сборка всегда успешна.Я надеюсь найти ответы в ближайшее время.=)

несколько прочитанных мной ссылок

https://github.com/ideashower/ShareKit/issues/207

https://github.com/ideashower/ShareKit/issues/234

https://github.com/dagerydoo/ShareKit

ОБНОВЛЕНИЕ Я добавил кнопку выхода из системы и смог выйти из всех служб.Я смог открыть экран входа в Facebook, но после входа в систему он мог бы решить ту же проблему (диалоговое окно с белым экраном синей полосой и исчезнуть через секунду), он не будет отображать страницу публикации.

Я также сделал способ, которым dagerydoo делает это, когда он открывает сафари вместо диалога в приложении, я смог войти в систему и «разрешить», и та же самая проблема здесь белый экран с всплывающим сообщением об ошибке «сафари не может открыть»страница, потому что адрес является недействительным "Я посмотрел на адрес, который он" facebook.com/dialog/permissions.request"....im думая, что это может быть проблемой, которая вызывала белый экран как диалоговое окно в приложении ив сафари, где будет белый экран при запросе публикации страницы

Ответы [ 2 ]

2 голосов
/ 12 октября 2011

Решено! После многих попыток решить его с помощью метода и предложения других людей и всех неудачных попыток я решил начать все заново с оригинального sharekit и обнаружил, что удалил общее предупреждение: «класс« fbxmlhandler »не реализует протокол« NSXMLParserDelegate »» что вызывает эту проблему. Я также добавил протокол NSXMLParserDelegate в FBXMLHandler.h, который избавляет от предупреждения, без ошибок и всего, что работает так, как должно быть.

0 голосов
/ 15 января 2013

У меня было такое же поведение - ShareKit открывает FB для аутентификации, а затем FB просто переходит на ленту новостей или что-то еще после краткого отображения белого диалога. Я считаю, что в моем случае я уже вошел в систему, и FB пытался отправить меня обратно в мое приложение, аутентифицировавшись. Проблема была в том, что «схема URL» не работала правильно и открывала мое приложение. На устройстве было установлено несколько версий моего приложения (текущая, версия для продажи, версия для разработчиков и т. Д.). Все зарегистрировали одну и ту же схему URL. Я разрабатывал «специальную» конфигурацию сборки отдельно от конфигурации сборки выпуска. Я не исправил проблему со специальной сборкой, но конфигурация релиза работает. Этого достаточно для того, чтобы снова начать работу, поэтому сейчас я прекращаю эту проблему. FWIW.

...