1

出于某种原因,当我尝试加载 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.');
}

这告诉了来自 thegoogleservice-plist或 myinfo.plist或其他东西的一些值没有被正确读取,但我不知道要查看哪个值。

在我的里面我info.plistGADApplicationIdentifier正确的设置:

在此处输入图像描述

为什么我的应用程序的名称显示为 nil?

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
                }
    }

在此处输入图像描述

4

1 回答 1

0

我不得不添加 dig deep 以找出问题,但问题是CFBundleDisplayName或更好,但Bundle Display Name(红色)info.plist是空白的:

在此处输入图像描述

如果Bundle Display Name(红色)为空白,则GDPR Consent表单将返回错误。您可以手动输入您的应用名称

或者

只需删除整个(红色)Bundle Display Namek/v 字段。如果您将其删除,则将GDPR Consent使用Bundle Name(黄色)。

无论您做什么,都不要犯错误并删除Bundle Name(黄色)。

请按照以下 2 个答案了解 theBundle Display Name和之间的解释Bundle Name

捆绑显示名称解释

将显示名称与图片捆绑在一起

于 2019-11-27T04:47:09.380 回答