加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Xcode在将iOS应用程序上传到App Store时尝试匹配框架包ID

发布时间:2020-12-15 02:02:38 所属栏目:百科 来源:网络整理
导读:经过4个月的开发,我的第一个iOS应用程序,是时候提交到App Store。我在iTunes Connect中创建了应用程序,填写了所有的细节,在Connect和Xcode中设置了正确的Bundle ID。不过,我在努力解决这个奇怪的问题的最后3天奋斗。似乎xcode正在尝试上传Cocoapods框架
经过4个月的开发,我的第一个iOS应用程序,是时候提交到App Store。我在iTunes Connect中创建了应用程序,填写了所有的细节,在Connect和Xcode中设置了正确的Bundle ID。不过,我在努力解决这个奇怪的问题的最后3天奋斗。似乎xcode正在尝试上传Cocoapods框架,而不是我的主要应用程序。

归档后,我去了窗口>主办单位>验证….我看到以下屏幕:

enter image description here

错误:

enter image description here

(对于Google员工:没有找到合适的应用程序记录。验证您的包标识符“org.cocoapods.Alamofire”是否正确)。

错误消息表示它正在尝试根据框架的名称匹配Bundle ID,而不是我自己的bundle(例如com.organization.AppName)。我找不到任何答案。我尝试在我的Podfile(它有use_frameworks!)以及我的不同的conf组合中做了以下,但没有成功。

post_install do |installer|
  installer.pods_project.targets.each do |target|
    target.build_configurations.each do |config|

      config.build_settings['EXPANDED_CODE_SIGN_IDENTITY'] = ""
      config.build_settings['CODE_SIGNING_REQUIRED'] = "NO"
      config.build_settings['CODE_SIGNING_ALLOWED'] = "NO"
    end
  end
end

enter image description here

All codesigning set to automatic

问题:

我正在做的步骤正确吗?
>为什么Xcode试图匹配一个框架的bundle id而不是我的主要应用程序?
>如何解决这个问题,最后提交我的应用程序?

编辑1:我能够解决这个问题,但是后来又引起了一个问题,所以我还没有一个解决方案。基本上,Alamofire Pod(来自Cocoapods)有一个bundle id com.xxx.Alamofire。我将其更改为com.xxx.myAppName。因此,我可以将其发送到App Store,但是由于以下错误,我无法从TestFlight安装我的iPhone中的应用程序:

4/22/16,12:50:29 AM itunesstored[124]: [ApplicationWorkspace]: Failed to install application: com.xxx.myAppName; /var/mobile/Media/Downloads/5927832272594571027/-6969961974973998640; Error Domain=LaunchServicesError Code=0 "(null)" UserInfo={Error=DuplicateIdentifier,ErrorDescription=The parent bundle has the same identifier (com.xxx.myAppName) as sub-bundle at /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.IVHCuO/extracted/Payload/MyApp.app/Frameworks/Alamofire.framework}

解决方法

经过相当一段时间的努力,我能够使其发挥作用。基本上,只有Alamofire提出这个问题。这是我做的:

>在导航器中,单击Pods。
>在目标下,您将看到您的应用程序正在使用的所有框架。
>点击Alamofire(或导致问题的框架)。
>编辑软件包标识符。如果您的应用程序Bundle Id是com.company.appName,请在其中编写com.company.appName.Alamofire。

我尝试了com.company.appName的框架,com.company.Alamofire,没有任何工作。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读