Для отображения страницы разрешений в Facebook iphone - PullRequest
4 голосов
/ 18 февраля 2010

Я новичок в разработке для iphone, я хочу отобразить страницу разрешений после входа в Facebook.

buttonIndex - это индекс моих листов действий.

 if(buttonIndex == 1)
 {  
    session = [FBSession sessionForApplication:@"My App key" secret:@"My Key"   delegate:self];
FBLoginDialog* dialog = [[[FBLoginDialog alloc] initWithSession:session] autorelease];
    [dialog show];  

 } 

с помощью этого кода успешно войти на Facebook, но я хочу, чтобы страница разрешения отображалась,

так что я могу использовать,

 - (void)session:(FBSession*)session didLogin:(FBUID)uid 
 {

NSLog(@"User with id %lld logged in.", uid);

 FBPermissionDialog* dialog1 = [[[FBPermissionDialog alloc] init] autorelease];
 dialog1.delegate = self;
 dialog1.permission = @"uid";
 [dialog1 show];

 }

Но это не работает. Где я могу поставить этот код. И я хочу поделиться своим контентом после разрешения.

Если я выйду из Facebook, он перейдет в браузер, но я хочу вернуть свое приложение после выхода из системы,

Пожалуйста, помогите мне, направьте меня, плз.

Ответы [ 2 ]

2 голосов
/ 02 марта 2010

Я бы изменил это dialog1.permission = @"uid"; на что-то вроде этого dialog1.permission = @"publish_stream";. Потому что вы хотите опубликовать свой контент в потоке пользователей, верно?

 - (void)session:(FBSession*)session didLogin:(FBUID)uid

После входа в систему я сначала проверил, есть ли у вас разрешение на публикацию в потоке пользователя, создав FBRequest

NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys: @"publish_stream", @"ext_perm", nil];
[[FBRequest requestWithDelegate:self] call:@"facebook.users.hasAppPermission" params:params];

Результат, который вы можете оценить здесь

- (void)request:(FBRequest*)request didLoad:(id)result 

например. как это

if ([request.method isEqualToString:@"facebook.users.hasAppPermission"])
{
    NSString *success = result;

    if ([success isEqualToString:@"1"]) 
    {
        NSLog(@"User has app permission");

        // publish content now
                    ...
    } 
    else
    {   // else ask for permission, opening permission dialog
        ...
    }
0 голосов
/ 02 марта 2010

Я очень рекомендую учебник этого парня, Брэндона Треба, по интеграции Facebook. Он делает очень тщательную презентацию и ведет вас построчно, так что если это не сработает, это опечатка с вашей стороны. Его урок помог мне начать работу менее чем за два часа.

http://brandontreb.com/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...