Интеграция приложений iOS с интересом [закрыто]

Какой самыйнадежный способ в настоящее время разрешить совместное использование интереса из приложения iOS?

Pinterest API пока не является общедоступным, и единственным предложенным способом поделиться является его веб-кнопка.

 mydogisbox28 мар. 2012 г., 16:29
Почему не веб-кнопка?
 Peter Prokop29 мар. 2012 г., 09:04
Веб-кнопка @mydogisbox неудобна для пользователя, так как вы должны показать дополнительный веб-просмотр и создать на своем сайте какую-то мобильную страницу.

Ответы на вопрос(5)

о поводу SDK. Самая близкая вещь, которую я нашел, - это PHP-оболочка на github.https://github.com/kellan/pinterest.api.php.

Это не лучшее решение, хотя, потому что это неофициальный API и, скорее всего, сломается.

Решение Вопроса

пления контента.

Проверять, выписыватьсясайт их разработчиков для дополнительной информации.

 Amy Worrall07 июн. 2013 г., 12:16
Вы переходили по ссылке в моем посте? Если вы нажмете «iOS SDK», вы должны найти то, что вам нужно.
 Kiddo06 июн. 2013 г., 18:09
У кого-нибудь есть URL для примера кода? нужно найти более подробную информацию о том, как это сделать

у Pinterest еще нет API для публикации, я использовал следующий метод. Я просто программно создаю веб-страницу HTML и программно добавляю кнопку «Закрепить» на эту страницу. Затем я показываю веб-вид и позволяю пользователю нажать еще раз. Это более объясненные шаги.

1) Создайте WebViewController, который имеет UIWebView. Кнопка Добавить Закрыть, добавить свойство UIWebViewDelegateProtocol, spinner, htmlString.

2) Сгенерируйте HTML программно, чтобы поместить его в этот UIWebView, когда пользователь нажимает на кнопку «Прикрепить» в вашем приложении. В этом случае я помещаю на страницу HTML разные изображения для разных продуктов.

- (NSString*) generatePinterestHTMLForSKU:(NSString*)sku {
NSString *description = @"Post your description here";

// Generate urls for button and image
NSString *sUrl = [NSString stringWithFormat:@"http://d30t6wl9ttrlhf.cloudfront.net/media/catalog/product/Heros/%@-1.jpg", sku];
NSLog(@"URL:%@", sUrl);
NSString *protectedUrl = (__bridge NSString *)CFURLCreateStringByAddingPercentEscapes(NULL,(__bridge CFStringRef)sUrl, NULL, (CFStringRef)@"!*'\"();:@&=+$,/?%#[]% ",CFStringConvertNSStringEncodingToEncoding(NSUTF8StringEncoding));
NSLog(@"Protected URL:%@", protectedUrl);
NSString *imageUrl = [NSString stringWithFormat:@"\"%@\"", sUrl];
NSString *buttonUrl = [NSString stringWithFormat:@"\"http://pinterest.com/pin/create/button/?url=www.flor.com&media=%@&description=%@\"", protectedUrl, description];

NSMutableString *htmlString = [[NSMutableString alloc] initWithCapacity:1000];
[htmlString appendFormat:@"<html> <body>"];
[htmlString appendFormat:@"<p align=\"center\"><a href=%@ class=\"pin-it-button\" count-layout=\"horizontal\"><img border=\"0\" src=\"http://assets.pinterest.com/images/PinExt.png\" title=\"Pin It\" /></a></p>", buttonUrl];
[htmlString appendFormat:@"<p align=\"center\"><img width=\"400px\" height = \"400px\" src=%@></img></p>", imageUrl];
[htmlString appendFormat:@"<script type=\"text/javascript\" src=\"//assets.pinterest.com/js/pinit.js\"></script>"];
[htmlString appendFormat:@"</body> </html>"];
return htmlString;
}

Это пример моего метода генерации HTML-страницы.

3) Создайте метод для вызова, когда пользователь нажимает на кнопку «Закрепить», которая показывает тот веб-вид с изображением, которое вы опубликуете, и кнопку «Закрепить» на UIWebView. Это мой пример:

- (void) postToPinterest {

NSString *htmlString = [self generatePinterestHTMLForSKU:self.flProduct.sku];
NSLog(@"Generated HTML String:%@", htmlString);
WebViewController *webViewController = [[WebViewController alloc] initWithNibName:@"WebViewController" bundle:nil];
webViewController.htmlString = htmlString;
webViewController.showSpinner = YES;

[[[[UIApplication sharedApplication] keyWindow] rootViewController] presentModalViewController:webViewController animated:YES];
}

4) Поместите кнопку «Закрыть» в ваш WebViewController, чтобы закрыть его. Также вы можете добавить счетчики для отслеживания загрузки UIWebView.

- (IBAction)closeClicked:(id)sender {
[self dismissModalViewControllerAnimated:YES];

}

- (void)webViewDidStartLoad:(UIWebView *)webView {
if (showSpinner) {
    // If we want to show Spinner, we show it everyTime
    [UIHelper startShowingSpinner:self.webView];
}
else {
    // If we don't -> we show it only once (some sites annoy with it)
    if (!spinnerWasShown) {
        [UIHelper startShowingSpinner:self.webView];
        spinnerWasShown = YES; 
    }
}
}

-(void)webViewDidFinishLoad:(UIWebView *)webView {
    [UIHelper stopShowingSpinner];
}

Постскриптум Я использовал тот же метод, чтобы добавить кнопку +1 Google Plus в приложение для iPad. (У него тоже нет API публикации, только API только для чтения)

 Abizern05 февр. 2013 г., 09:35
Примечание для всех, кто использует этот код - следите за строкой в процентах и многословностью создания строк с использованием строк формата, но просто передавая статическую строку.
 Suraj Mirajkar02 нояб. 2012 г., 08:23
Это работает ... спасибо большое.

также загружал приложение Pinterest на свое устройство, но не смог подключиться к нему.

И дело в том, что я не хочу использовать webView для интеграции, поэтому возможно ли это сделать, я не нашел ни одного приложения в магазине приложений, в котором есть интеграция с процентами.

Я также занимался поиском в Google, но, что еще хуже, Snapguide также удалил интеграцию интереса из их приложения.

Я использовал код webView для закрепления изображения, нет необходимости открывать полный сайт Pinterest,

NSString *urlStr =[NSString stringWithFormat:@"http://pinterest.com/pin/create/bookmarklet/?url=www.<domainname>.com&media=http://<domainname>.files.com/hello.jpg?w=495&description=hello"];

Это было бы легко, но с WebView, и я не хочу.

вы можете использовать iphone-URL-Scheme и вызвать приложение Pinterest вместе с параметрамиURL(URL страницы для закрепления),СМИ(URL изображения для закрепления) &описание(Описание страницы, которая будет закреплена). Представьте UIAlertView и отправьте их в магазин приложений, чтобы загрузить официальное приложение Pinterest, если пользователь не установил его.

Ссылка: http://wiki.akosma.com/IPhone_URL_Schemes#Pinterest

Код для открытия Pinterest Применение:

NSURL *url = [NSURL URLWithString:@"pinit12://pinterest.com/pin/create/bookmarklet/?url=URL-OF-THE-PAGE-TO-PIN&media=URL-OF-THE-IMAGE-TO-PIN&description=ENTER-YOUR-DESCRIPTION-FOR-THE-PIN"];
if ([[UIApplication sharedApplication] canOpenURL:url]) {
    [[UIApplication sharedApplication] openURL:url];
}else {
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Pinterest" message:@"Would you like to download Pinterest Application to share?" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Continue", nil];
    [alert show];
}

Метод UIAlertViewDelegate

- (void)alertView:(UIAlertView *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
    if (buttonIndex == 1){
        NSString *stringURL = @"http://itunes.apple.com/us/app/pinterest/id429047995?mt=8";
        NSURL *url = [NSURL URLWithString:stringURL];
        [[UIApplication sharedApplication] openURL:url];
    }
}
 rosaMerino20 февр. 2013 г., 16:25
Я попробовал этот код, но canOpenUrl всегда возвращает NO, хотя я уже установил Pinterest на свое устройство. Я думаю, может быть, это потому, что я уже реализовал функции общего доступа на facebook, google +, ... Есть ли что-то, что я должен добавить в метод AppDelegate - (BOOL) приложение: (UIApplication *) приложение openURL: (NSURL *) url sourceApplication: (NSString *) аннотация sourceApplication: открыть приложение Pinterest?
 Jeremie17 окт. 2014 г., 18:58
Это больше не работает в новом API.

Ваш ответ на вопрос