Форма согласия Swift -GDPR возвращает ошибку: недопустимое имя приложения
По какой-то причине, когда я пытаюсь загрузить форму согласия GDPR, я получаю сообщение об ошибке:
Ошибка: неверное имя приложения.
Здесь бывает:
form.load { [weak self](_ error: Error?) -> Void in
print("Load complete.")
if let error = error {
// *** HERE IS THE ERROR ***
print("Error loading form: \(error.localizedDescription)")
return
}
Когда я выполняю глобальный поиск invalid app name
Я попадаю в consentform.html
файл:
// Set app name.
var appName = formInfo['app_name'] || '';
if (appName.length <= 0) {
formLoadCompleted('Error: invalid app name.');
}
Это говорит о некотором значении либо из googleservice-plist
или мой info.plist
или что-то еще не читается правильно, но я не знаю, на какое значение смотреть.
Внутри моего info.plist
у меня есть GADApplicationIdentifier
правильно установить:
Почему в названии моего приложения отображается ноль?
PACConsentInformation.sharedInstance.debugGeography = .EEA
PACConsentInformation
.sharedInstance
.requestConsentInfoUpdate(forPublisherIdentifiers: ["pub-MY_PublisherID"]) { [weak self](error) in
if let error = error { return }
PACConsentInformation.sharedInstance.isRequestLocationInEEAOrUnknown {
if PACConsentInformation.sharedInstance.consentStatus == PACConsentStatus.unknown {
guard let privacyUrl = URL(string: "My_Privacy_URL"),
let form = PACConsentForm(applicationPrivacyPolicyURL: privacyUrl) else {
return
}
form.shouldOfferPersonalizedAds = true
form.shouldOfferNonPersonalizedAds = true
form.shouldOfferAdFree = true
form.load { [weak self](_ error: Error?) -> Void in
print("Load complete.")
if let error = error {
// *** HERE IS THE ERROR ***
print("Error loading form: \(error.localizedDescription)")
return
}
// ...
}
return
}
}
1 ответ
Мне пришлось добавить глубину, чтобы выяснить проблему, но проблема заключалась в CFBundleDisplayName
или еще лучше Bundle Display Name
(красный) в info.plist
было пусто:
Если Bundle Display Name
(красный) пуст, тогда GDPR Consent
форма вернет ошибку. Вы можете вручную ввести свойapp's name
ИЛИ
просто УДАЛИТЬ весь (красный)Bundle Display Name
к / х поле. Если вы удалите его, тоGDPR Consent
прибегнет к использованию Bundle Name
(желтый).
Что бы вы ни делали, НЕ совершайте ошибку и удаляйте (желтый)Bundle Name
.
Следуйте этим 2 ответам для объяснения между Bundle Display Name
и Bundle Name
: