Создание ответа Pin PDKResponseObject не соответствует документации
Мы создаем пин-код в определенной плате, используя метод createPinWithImageonBaord: описание:progress:withSuccess:andFailure:
Мы читаем в документации (здесь: https://developers.pinterest.com/docs/api/overview/ и здесь: https://github.com/pinterest/ios-pdk/blob/master/Pod/Classes/PDKClient.h#L417) что этот метод должен возвращать PDKResponseObject *responseObject с идентификатором, URL, URL перехода по клику и описанием созданного Pin.
Мы были достаточно изобретательны, чтобы попытаться получить доступ к идентификатору Пина и его URL, используя любой возможный ключ (@"id", @"identifier", @"url", @"NSUrl"), но возвращаемые значения всегда равны нулю. Фактически, PDKResponseObject возвращает только 2 ключа: идентификатор платы и описание контакта. Что мы должны сделать, чтобы получить доступ к идентификатору или, по крайней мере, к URL вновь созданного PIN-кода?
У кого-нибудь есть такая же проблема?
1 ответ
Несмотря на многочисленные попытки и после попытки обсудить эту проблему с командой разработчиков Pinterest, это все еще остается. Тестирование решения также становится чрезвычайно трудным, учитывая новое ограничение Pinterest, наложенное на не одобренные приложения (которые включают в себя все приложения, разрабатываемые по определению).
На данный момент я нашел способ обойти только, вызвав новый запрос, чтобы получить все выводы на определенной доске и получить первый в результирующем массиве (который является последним опубликованным):
//Create pin in Pinterest
[[PDKClient sharedInstance]createPinWithImage:image link:urlToShare
onBoard:reference description:message progress:nil
withSuccess:^(PDKResponseObject *responseObjectCreation) {
//Previous block does not return pin id so a new call is required
[[PDKClient sharedInstance]getBoardPins:reference fields:[NSSet
setWithArray:@[@"link"]] withSuccess:^(PDKResponseObject
*responseObject) {
//Get id of last pin
NSArray *pinIDs = [[NSArray arrayWithArray:[responseObject
pins]]valueForKey:@"identifier"];
NSString *postId = [pinIDs objectAtIndex:0];
}];
}];
Кстати, правильный ключ для идентификатора контакта - это "идентификатор", а не "идентификатор" или "идентификатор", как сказано в документации API. Просто узнал, попробовав несколько раз и проверив приложение Pinterest Пример в GitHub.
Надеюсь, что это помогает другим людям, которые борются с той же проблемой.