Как публиковать сообщения в стене Google+

Я хочу поделиться некоторой информацией в стене Google+ с моим приложением. Для этого я просматриваю Google+ API. В этом API они упоминают, как получить доступ к токену конкретного пользователя, но они не упоминают, как публиковать сообщения на стене пользователей, используя токен доступа.

Ответ 1

Ну, у Google+ нет "стены", у нее есть "Потоки". Правильный термин может помочь вам найти лучшие результаты поиска. В любом случае, если вы не являетесь партнером Google, новости не очень хорошие:

В настоящее время API ограничен доступом только для чтения. На веб-сайте :

Примечание. API Google+ в настоящее время предоставляет доступ только для чтения для общественности данные. Для всех вызовов API требуется либо токен OAuth 2.0, либо ключ API.

Поскольку он доступен только для чтения, вы не сможете обновлять или размещать какую-либо информацию в любом месте через API - вы можете использовать его только для получения базовой информации, такой как информация о профиле и активности.

Учитывая, что доступ к API со временем может меняться, я попытаюсь обновить этот ответ с информацией о новостях или изменениях, связанных с доступом к записи.


Новости и обновления

2015-04-28: Google+ Домены API был анонсирован еще в августе 2013 года, но почему-то я пропустил его релевантность для Google+.

API Доменов Google+ позволяет клиентам и независимым поставщикам Google использовать расширенные API Google+ для создания инструментов и сервисов, которые могут использоваться различными способами.

Нет, он не предоставляет полный доступ для записи к профилю пользователя Google+, но он дает вам небольшие преимущества перед Google+ API v1, по крайней мере, в пределах домена. Это в основном для разработчиков мобильных приложений.

2015-01-21. Я пересматривал многие источники, связанные с этим ответом, и искал новости об изменениях API, но Google был тихим.

2014-03-12. Различные темы обсуждения в Google+ о доступе к записи (или их отсутствии):

2013-12-03: поток проблем из UPDATE 1, наконец, был на который ответил участник проекта Google+, Дополнительное обсуждение, касающееся доступа к записи в Streams, происходит с перерывами на странице сообщества Разработка с Google+.

2013-07-05. Разработчик с именем Эрик Лерой построил "неофициальная" библиотека JavaScript, которая предоставляет расширение для чтения и записи в Google+ API.

2013-05-14. "Компания по управлению социальными медиа" может получить дополнительный доступ к API, пытаясь стать партнером API + страниц.

Здесь выдержка из формы заявки партнера:

API страниц Google+ позволяет компаниям, управляющим социальными сетями, добавлять в свой инструмент функции управления + страницей. Доступ к этому API доступен через белый список, и доступ предоставляется партнерам в компании по компаниям в зависимости от соответствия этому API.

Другие статьи, объясняющие отсутствие API для записи:

2013-01-04: Google только что объявил История Google+. Вы можете использовать его для написания "моментов" (которые являются закрытыми по умолчанию), но затем могут быть преданы гласности, деля их непосредственно на ваш поток и/или ваш профиль. Один из моментов - CommentActivity.

2012-10-08: теперь дублировать сообщение об ошибке с несколькими комментариями, но вы можете проверить там также для будущих обновлений.

2012-06-25: Я наткнулся на сообщение о проблеме отслеживания для Google+ Write Access. Статус запроса улучшения - "Новый", а приоритет - "Средний" по состоянию на 25 июня th 2012. В комментариях есть несколько ссылок.

Ответ 2

Это может помочь: я сделал этот букмарклет для публикации ссылок на страницы, которые мне нравились в моем потоке:

javascript:location='https://plusone.google.com/_/+1/confirm?hl=en&url='+location

URL-адрес не требует пояснений. Если ваш почтовый контент может быть отправлен через URL-адрес, вы можете опубликовать его так. Единственная трудность состоит в том, чтобы автоматизировать обратный вызов проводки от Google, но мне это не нужно, не должно быть слишком сложно.

Ответ 3

Теперь вы можете сделать это. См. Ниже документы разработчика Google:

https://developers.google.com/+/domains/posts/creating

Единственное, о чем нужно знать, это то, что API Google+ Domains позволяет создавать только закрытые сообщения и позволяет добавлять комментарии к закрытым сообщениям.

Ответ 4

Если вы используете wordpress, есть плагин, который позволяет автоматически публиковать в google плюс WP Plugin Post в Google Plus, однако это не бесплатно, дешево, но не бесплатно. Вероятно, вы можете отладить его с php и посмотреть, как они это делают.

Ответ 5

Запись в потоки профиля Google+ ограничена только доменами.

Например, если вы владеете компанией с именем xyz co и имеет домен xyz.com. Вы можете использовать Google+ Domains API для записи в потоки. Хотя это будет ограничено людьми, использующими один и тот же домен, и используя приложение Google G Suit для бизнеса и недоступно для обычного идентификатора электронной почты gmail.com Google.

API Google+ Domains позволяет создавать только закрытые сообщения и позволяет добавлять комментарии к закрытым сообщениям.

Например, Джон и Миша работают в качестве сотрудника в xyz co и имеют связанный с ним почтовый ящик компании [email protected] и [email protected], после чего они могут отправлять сообщения в связанные потоки доменов в Google+. Хотя эти сообщения не будут отображаться публично и могут быть видимыми для членов, принадлежащих к одному домену. Если какое-либо сообщение должно быть опубликовано, вам необходимо выполнить эту задачу вручную Ref.

Если вы хотите опубликовать информацию о Google+ для бизнеса или знаменитости, вам необходимо искать API + страницы Google, который позволяет вам написать сообщение на деловой странице. Хотя они были ограничены здесь, с формой заявления партнеров, которые должны быть одобрены для получения вашего доступа к API страниц, который является очень строгим и труднодоступным для одобрения.

API страниц Google+ позволяет компаниям, управляющим социальными сетями, добавлять в свой инструмент функции управления + страницей. Доступ к этому API доступен через белый список, и доступ предоставляется партнерам в компании по компаниям в зависимости от соответствия этому API. Если вы являетесь компанией, занимающейся управлением социальными сетями, заинтересованной в получении доступа к этому API, пожалуйста, заполните форму ниже с информацией о вашей платформе. Пожалуйста, ответьте на все вопросы ниже точно; любая неверная информация, которая искажает ваш инструмент, может повлиять на доступ вашей компании к этому API. Если ваша компания подходит для этих функций API, команда Google+ обратится к контакту, предоставленному в этой форме, следующими шагами. Пожалуйста, не отправляйте несколько записей в эту форму.

Другой способ опубликовать в Google+ можно через кнопку "Поделиться", "Интерактивная проводка" и "Встроенная проводка" в Google+ Ref.

Ответ 6

//Следуйте этому следующему: https://developers.google.com/+/mobile/ios/share/

-(void)shareGoogle{

    [signIn authenticate];
     [signIn trySilentAuthentication];
}

-(void)refreshInterfaceBasedOnSignIn {

    if ([[GPPSignIn sharedInstance] authentication]) {
        // The user is signed in.
        NSLog(@"%@", [[GPPSignIn sharedInstance] authentication]);        
               [self didTapShare:nil];        
    }
    else {        
        self.signInButton.hidden = NO;
        // Perform other actions here
    }
}

- (IBAction) didTapShare: (id)sender {   
    [GPPShare sharedInstance].delegate = self;    
    id<GPPNativeShareBuilder> shareBuilder = [[GPPShare sharedInstance] nativeShareDialog];       
    // Set any prefilled text that you might want to suggest
    [shareBuilder setPrefillText:@"message"];   
    [shareBuilder attachImage:[UIImage imageWithData:imageData]];    
    [shareBuilder open];    
    likeShareBtn.userInteractionEnabled = FALSE;    
}

- (void)finishedSharingWithError:(NSError *)error {
    NSString *text;    
    if (!error) {
        text = @"Success";        
    } else if (error.code == kGPPErrorShareboxCanceled) {
        text = @"Canceled";
    } else {
        text = [NSString stringWithFormat:@"Error (%@)", [error localizedDescription]];
    }

    NSLog(@"Status: %@", text);
}

-(void)presentSignInViewController:(UIViewController *)viewController {
    // This is an example of how you can implement it if your app is navigation-based.
    [[self navigationController] pushViewController:viewController animated:YES];
}