IOS Swift - API поиска объявлений requestAttributionDetails просто возвращает ноль
Я пытаюсь использовать Apples Search Ad API, чтобы вернуть данные объявления в приложение, чтобы я мог записать его. Первая попытка произвела данные по умолчанию для Apple, на следующий день я получил ноль, возвращенный по всем атрибутам.
это как-то связано с этим? iadAttribution = false
Я тестирую на нескольких устройствах, одно из них было обновлено до последней версии IOS, все выдают одинаковый результат.
Пожалуйста, не приложение еще не в живых, и я использую тестирование устройств!
Любые идеи, почему он возвращает ноль вместо данных по умолчанию?
Я следовал этому руководству http://www.nikola-breznjak.com/blog/ios/create-native-ios-app-can-read-search-ads-attribution-api-information/
override func loadView() {
super.loadView()
getSearchAdsInfo()
}
func getSearchAdsInfo(){
ADClient.shared().requestAttributionDetails({ (attributionDetails, error) in
if error == nil {
for (type, adDictionary) in attributionDetails! {
var attribution = adDictionary as? Dictionary<AnyHashable, Any>;
let params = [
"deviceID": self.appData.deviceInfo,
"appID": "self.appData.appID",
"iadAdgroupId": attribution?["iad-adgroup-id"] as? String as Any,
"iadAdgroupName": attribution?["iad-adgroup-name"] as? String as Any,
"iadAttribution": attribution?["iad-attribution"] as? String as Any,
"iadCampaignId": attribution?["iad-campaign-id"] as? String as Any,
"iadCampaignName": attribution?["iad-campaign-name"] as? String as Any,
"iadClickDate": attribution?["iad-click-date"] as? String as Any,
"iadConversionDate": attribution?["iad-conversion-date"] as? String as Any,
"iadCreativeId": attribution?["iad-creative-id"] as? String as Any,
"iadCreativeName": attribution?["iad-creative-name"] as? String as Any,
"iadKeyword": attribution?["iad-keyword"] as? String as Any,
"iadLineitemId": attribution?["iad-lineitem-id"] as? String as Any,
"iadLineitemName": attribution?["iad-lineitem-name"] as? String as Any,
"iadOrgName": attribution?["iad-org-name"] as? String as Any
]
print(params)
}
}
})
}
И результат
["iadCampaignName": nil,
"iadLineitemName": nil,
"iadCreativeId": nil,
"iadOrgName": nil,
"iadConversionDate": nil,
"iadAdgroupName": nil,
"iadClickDate": nil,
"iadCreativeName": nil,
"iadLineitemId": nil,
"iadCampaignId": nil,
"iadKeyword": nil,
"iadAdgroupId": nil,
"iadAttribution": Optional("false")]
и print(attributionDetails) производит следующее
Optional(["Version3.1": {
"iad-attribution" = false;
}])
1 ответ
Для меня сработало получение Simulator для iOS версии 10.2. С этой версией поступают фиктивные данные. Я получил это:
`Optional([AnyHashable("Version3.1"): {
"iad-adgroup-id" = 1234567890;
"iad-adgroup-name" = AdGroupName;
"iad-attribution" = true;
"iad-campaign-id" = 1234567890;
"iad-campaign-name" = CampaignName;
"iad-click-date" = "2018-06-12T14:56:14Z";
"iad-conversion-date" = "2018-06-12T14:56:14Z";
"iad-creative-id" = 1234567890;
"iad-creative-name" = CreativeName;
"iad-keyword" = Keyword;
"iad-lineitem-id" = 1234567890;
"iad-lineitem-name" = LineName;
"iad-org-name" = OrgName;
}])
Похоже, фиктивные данные не отправляются в последней версии iOS (в моем случае 11.4)
Перейдите по этой ссылке, чтобы узнать, как получить симулятор для старой версии iOS: /questions/2977208/xcode-zapustit-simulyator-s-bolee-staroj-versiej-ios/2977210#2977210