1

У меня действительно есть часы, чтобы попытаться решить этот вопрос неуспешно! Я просто хочу, чтобы иметь возможность читать временные рамки пользователя (публичные сообщения) из facebook ... Технически (для простоты) я бы предпочел использовать только фреймворки из iOS sdk (т. Е. Не использовать facebook один). Поэтому в настоящее время я использую только Social.framework и Accounts.frameworkКак читать любую пользовательскую временную шкалу пользователя facebook с помощью iOS Social framework?

Что мне до сих пор удается сделать, это прочитать временную шкалу facebook текущего пользователя (того, который указан на устройстве), но когда я пытаюсь «me» на «ANOTHER_USER_ID» в следующем URL-адресе @ «https://graph.facebook.com/me/feed», он возвращает только пустое поле данных (нет «сообщения»).

«Странный» факт заключается в том, что я могу успешно достичь любого фида корпоративного типа (например, «cocacola»), используя @ «https://graph.facebook.com/cocacola/feed».

Так что мой вопрос: как добраться до корма «простого» пользователя (например, «shireesh.asthana»), чтобы я мог прочитать его «сообщение»?

Мой процесс до сих пор:

  1. Создать приложение на https://developers.facebook.com/, чтобы получить AppID
  2. Используйте этот AppID в своем коде, чтобы иметь возможность отправить запрос с помощью SLRequest

Ниже код, который я использую в настоящее время:

ACAccountStore *account = [[ACAccountStore alloc] init]; 
    ACAccountType *accountType = [account 
            accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook]; 

    // Specify App ID and permissions 
    NSDictionary *options = @{ 
           ACFacebookAppIdKey: @"1111111111111", // My AppID here 
           //ACFacebookPermissionsKey: @[@"read_stream"], 
           ACFacebookPermissionsKey: @[@"email", @"read_stream"], 
           ACFacebookAudienceKey:ACFacebookAudienceFriends 
           }; 

    [account requestAccessToAccountsWithType:accountType 
            options:options completion:^(BOOL granted, NSError *error) 
    { 
     if (granted == YES) 
     { 
      NSArray *arrayOfAccounts = [account 
             accountsWithAccountType:accountType]; 

      if ([arrayOfAccounts count] > 0) 
      { 
       ACAccount *facebookAccount = [arrayOfAccounts lastObject]; 

       // I want the messages and the author 
       NSDictionary *parameters = @{@"fields": @"message,from"}; 

       NSURL *feedURL = [NSURL URLWithString:@"https://graph.facebook.com/HERE_THE_USER_ID/feed"]; // Work with "cocacola" but not with "shireesh.asthana" 

       SLRequest *getRequest = [SLRequest 
              requestForServiceType:SLServiceTypeFacebook 
              requestMethod:SLRequestMethodGET 
              URL:feedURL 
              parameters:parameters]; 

       getRequest.account = facebookAccount; 

       [getRequest performRequestWithHandler: 
        ^(NSData *responseData, NSHTTPURLResponse 
        *urlResponse, NSError *error) 
        { 
         dataSource = [NSJSONSerialization 
            JSONObjectWithData:responseData 
            options:NSJSONReadingMutableLeaves 
            error:&error]; 

         // Reach the main queue to process result 
         dispatch_async(dispatch_get_main_queue(), ^{ 
          NSLog(@"Read %d messages", [dataSource[@"data"] count]); 
          if ([dataSource[@"data"] count] != 0) { 
           // Do stuff in case of success... 
          } else { 
           // Do stuff in case of ERROR... 
          } 
         }); 
        }]; 
      } else { 
       // Case of no facebook account on the device... 
      } 
     } else { 
      // User don't grant the app to access its facebook info... 
     } 
    }]; 

ответ

2

Итак, мой вопрос в том, как добраться до корма «простого» пользователя (например, «shireesh.asthana»), чтобы я мог прочитать его «сообщение»?

Причиной может быть -

  1. <user> не имеет государственных должностей,

  2. <user> имеет Выключите платформу в App Settings

(из -курс, <user> здесь не пользователь в сеансе)

P.S. Shireesh Asthana (работает в Facebook), не имеет публичных сообщений

+0

благодарит за сообщение. О фиде «Shireesh Asthana» я ссылался на свой собственный пост: http://stackoverflow.com/a/14188483/1749367, но вы полностью правы, так как на его фиде нет публичного сообщения. – helper

+0

М рад, что это помогло. Ура! –

Смежные вопросы