Проблем с Facebook SDK

Създадох удостоверяване във Facebook в моето приложение за iPhone, последвах това урок за това. Но освен един ред код, т.е

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    [FBSession.activeSession handleDidBecomeActive];
}

Когато използвам това, се показва грешка:

Няма видим @интерфейс за „FBSession“ декларира манипулатора на селектораDidBecomeActive

Но въпреки това удостоверяването работи добре, докато щракам върху бутона за влизане, проблемът е, че прозорецът ми за удостоверяване показва само „основна информация“ - трябва да получа достъп и до „публикуване от ваше име“

      My authentication window is             I need to authenticate 
              like this                    like this (as in FB tutorial)

въведете описание на изображението туквъведете описание на изображението тук

Не мога да открия грешката, дали ще бъде при създаването на приложение във Facebook или моята грешка при удостоверяване в кодирането на iPhone. Ако някой е получил грешката, моля, помогнете ми да изясня


person Nithin M Keloth    schedule 01.01.2013    source източник
comment
Коя версия на facebook SDK използвате? Ако си спомням правилно, handleDidBecomeActive е нов във Facebook SDK 3.1.   -  person Joachim Isaksson    schedule 01.01.2013
comment
да..използвам Facebook iOS 6 SDK (Facebook SDK 3.1.)   -  person Nithin M Keloth    schedule 01.01.2013
comment
Не мога да повторя проблема ви с handleDidBecomeActive с помощта на 3.1 SDK, моят тестов проект, който го използва, се компилира без никакви предупреждения или грешки, като импортира само <FacebookSDK/FacebookSDK.h>.   -  person Joachim Isaksson    schedule 01.01.2013
comment
така че може да е проблемът в създаването на приложението в developer.facebook Моля, уведомете ме за стъпките за това, така че мога да открия грешката си   -  person Nithin M Keloth    schedule 01.01.2013
comment
И получавате публикация от ваше име???   -  person Nithin M Keloth    schedule 01.01.2013
comment
Напишете отговор с информацията, вместо да добавяте още коментари :)   -  person Joachim Isaksson    schedule 01.01.2013


Отговори (3)


Пиша тестов проект, не мога да повторя вашето съобщение за грешка;

No visible @interface for 'FBSession' declares the selector handleDidBecomeActive

при компилиране с Facebook SDK 3.1.1 (нямайте 3.1 удобен за тестване). Изглежда, че е нещо свързано с версията, тъй като handleDidBecomeActive е ново във версия 3.1 и съобщението е свързано с това, че компилаторът не вижда селектора.

Също така, относно вашия проблем с разрешението; системата за разрешения е променена във версия 3.1, за да не ви позволява да изисквате разрешения за четене и запис едновременно. Цитат от документация за мигриране 3.1;

Сега трябва да поискате разрешение за четене и публикуване отделно (и в този ред). Най-вероятно ще поискате разрешенията за четене за персонализиране, когато приложението стартира и потребителят влезе за първи път. По-късно, ако е подходящо, приложението ви може да поиска разрешения за публикуване, когато възнамерява да публикува данни във Facebook.

Мога да поискам разрешение за четене при влизане (което виждате), но както виждате, не можете да поискате разрешения за публикуване едновременно. Ако аз, както намеква SDK, по-късно поискам това разрешение, изглежда, че работи както трябва.

person Joachim Isaksson    schedule 01.01.2013
comment
Публикувах цял код в този въпрос, моля, разгледайте stackoverflow.com /questions/13973635/facebook-in-iphone-app - person Nithin M Keloth; 01.01.2013

Използвах кода, който сте написали само в iOS 6 и по-нова версия. трябва да опитате този код:

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    if ([[[UIDevice currentDevice] systemVersion]integerValue] >= __IPHONE_6_0) {
        [FBSession.activeSession handleDidBecomeActive];
    }

}
person Janub    schedule 01.01.2013
comment
Ако не извикате handleDidBecomeActive, ще трябва да внедрите applicationDidBecomeActive: по някакъв друг начин, за да работи правилно с превключването на приложения. - person Joachim Isaksson; 01.01.2013
comment
показва същата грешка :( Мислите, че това е причината за моя проблем (няма публикация от ваше име) ?? - person Nithin M Keloth; 01.01.2013

Знам, че това е стара публикация, но смятам, че това може да помогне на някой, който се сблъсква със същия проблем, така че публикувам решението си тук. Използвам FacebookSDK v3.1 и изпитах същия проблем днес. Това е така, защото все още имам по-стария път на FacebookSDK v3.0 в пътеките за търсене на цели. Просто се уверете, че правилният път на FacebookSDK е въведен в пътеките за търсене на цели и компилаторът няма да се оплаче.

person aobs    schedule 23.02.2013