Как разместить в Google+ стену - PullRequest
92 голосов
/ 27 сентября 2011

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

Ответы [ 6 ]

152 голосов
/ 27 сентября 2011

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

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

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

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

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


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

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

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

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

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

2014-03-12: различные цепочки обсуждений в Google+ о доступе на запись (или об отсутствии такового):

2013-12-03: поток вопросов из ОБНОВЛЕНИЯ 1 наконец-то ответил участником проекта Google+ .На странице Developing with Google + Community периодически публикуется дополнительная дискуссия о доступе для записи в Streams.

2013-07-05: разработчик по имени Eric Leroy имеет встроенную «неофициальную» библиотеку JavaScript , которая обеспечивает расширение для чтения и записи в API Google+.

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

Вот выдержка изПартнерская заявка:

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

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

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

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

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

13 голосов
/ 01 ноября 2011

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

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

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

3 голосов
/ 21 октября 2016

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

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

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

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

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

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

Другой способ публикации в Google+ - кнопка «Поделиться», интерактивная публикация и встроенная публикация в Google+ Ref .

3 голосов
/ 30 марта 2015

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

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

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

3 голосов
/ 09 сентября 2012

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

0 голосов
/ 09 января 2015

// Следуйте этому: 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];
}
...