Xcode错误ITMS-90783:“缺少包显示名称”

时间:2019-06-28 12:38:46

标签: xcode testflight fastlane appstoreconnect

今天,我开始使用fastlane和Xcode收到此错误:

  

错误ITMS-90783:“缺少软件包的显示名称。Info.plist键   CFBundleDisplayName丢失或捆绑中的值为空   包标识为“ com.id”。”

可以,我没有删除此属性。我认为这是苹果方面的错误。

有人有相同的问题吗?您如何解决?

7 个答案:

答案 0 :(得分:147)

enter image description here只需将新属性添加到info.plist:

<key>CFBundleDisplayName</key>
<string>$(PRODUCT_NAME)</string>

答案 1 :(得分:10)

在Xcode中,您可以按照下图添加“显示名称”。 enter image description here

答案 2 :(得分:10)

从项目文件夹中打开“ info.plist”。

并添加密钥:“ 捆绑显示名称”或CFBundleName

并输入值:“您的应用名称” 。或添加诸如$(PRODUCT_NAME)

这样的产品名称

键值示例

<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>

那您的问题就解决了!

enter image description here

答案 3 :(得分:9)

我也有问题。尽管一个新项目的info.plist中有此内容:

<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>

这对我来说最近几天中断了。现在,我将CFBundleName硬编码为应用程序名称,这似乎可行。

答案 4 :(得分:5)

只需转到Info.plist并检查是否有const discordStrategy = new DiscordStrategy( { clientID: secretConfig.discord.publicKey, clientSecret: secretConfig.discord.privateKey, callbackURL: discordConfig.callbackUrl, scope: discordConfig.scopes, }, (accessToken, refreshToken, user, done) => { process.nextTick(() => { return done(null, user); }); } ); passport.serializeUser((user, done) => done(null, user)); passport.deserializeUser((user, done) => done(null, user)); passport.use(discordStrategy); app.use(passport.initialize()); app.use(passport.session()); 的条目 如果不存在,请执行以下步骤:打开Info.plist的源代码并添加

server {
        server_name api.something.com;

        location / {
                proxy_pass http://127.0.0.1:3002;
                proxy_http_version 1.1;
                proxy_cache_bypass $http_upgrade;

                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection 'upgrade';
                proxy_set_header Host $host;

                proxy_set_header X-Forwarded-Proto https;
                # proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header X-Forwarded-For $remote_addr;
                # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Host $host;
        }

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/.../fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/.../privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}

server {
    if ($host = api.something.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name api.something.com;
    return 404; # managed by Certbot
}

现在尝试存档,这次您将成功。 这是5-7天前引入的新要求。

干杯!

答案 5 :(得分:3)

我也收到此错误。一周前没有发生。我尝试在“捆绑包标识符”中输入捆绑包名称,但这没有用。必须在info.plist的Bundle Identifier项中实际粘贴$(PROJECT.ROOT),重新存档,然后上传到应用商店。

如果这不起作用,还有另一种可能的解决方案。看来苹果可能要求添加plist条目“捆绑名称”,其值为$(PRODUCT_NAME)。如果您的info.plist中没有该名称,则需要添加它,然后重试。

答案 6 :(得分:3)

我在这里查看答案,当我检查文件时,看起来应该是应该的样子,几天之内我都没有碰过info.plist文件。然后我注意到一些东西,而不是$(PRODUCT_NAME),我发现了${PRODUCT_NAME)。奇怪的是大括号。由于我将2个info.plist文件用于不同的目标,因此我决定检查另一个文件是否也包含大括号,并且确实如此。