在将iOS应用程序上传到App Store时,Xcode尝试匹配框架捆绑ID [英] Xcode trying to match frameworks bundle ID when uploading iOS app to App Store
问题描述
开发我的第一个iOS应用程序4个月后,是时候将它提交到 App Store
。我在 iTunes Connect
中创建了应用程序,填写了所有细节,在<$ c中设置了正确的 Bundle ID
c $ c>连接和 Xcode
。但是,过去3天我一直在努力解决这个奇怪的问题。好像xcode试图上传 Cocoapods
框架,而不是我的主应用程序。
归档后,我去了窗口>组织者>验证...
。我看到以下屏幕:
错误:
问题:
- 我的步骤是正确的吗?
- 为什么
Xcode
尝试匹配框架的包ID
而不仅仅是我的主应用程序? - 我怎样才能得到过去这个问题最终提交我的应用程序?
编辑1:我能够解决这个问题,但是帽子后来又引起了另一个问题,所以我仍然没有解决方案。基本上,Alamofire Pod(来自Cocoapods)的包ID com.xxx.Alamofire
。我将其更改为 com.xxx.myAppName
。有了这个,我能够将它发送到App Store,但由于以下错误,我无法从TestFlight在我的iPhone中安装该应用程序:
4/22/16,12:50:29 AM itunesstored [124]:[ApplicationWorkspace]:无法安装应用程序:com.xxx.myAppName;在/ var /移动/媒体/下载/ 5927832272594571027 / -6969961974973998640; Error Domain = LaunchServicesError Code = 0(null)UserInfo = {Error = DuplicateIdentifier,ErrorDescription =父包具有与/ private / var / installd / Library / Caches中的子包相同的标识符(com.xxx.myAppName) /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
,没有任何效果。
After 4 months developing my first iOS app, it's time to submit it to the App Store
. I created the app in iTunes Connect
, filled in all the details, set up the correct Bundle ID
in both Connect
and Xcode
. However, I've struggled the last 3 days trying to solve this weird problem. It seems like xcode is trying to upload Cocoapods
frameworks, not my main app.
After archiving, I went to Window > Organizer > Validate...
. I see the following screen:
The error:
(For googlers: No suitable application records were found. Verify your bundle identifier 'org.cocoapods.Alamofire
' is correct).
The error message indicates that it's trying to match a Bundle ID
according to a framework's name, not my own bundle (e.g com.organization.AppName
). I can't find answers anywhere. I tried doing the following in my Podfile
(which has use_frameworks!), as well as my different conf combinations but had no success.
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
Questions:
- Are the steps I'm making correct?
- Why is
Xcode
trying to match aframework's bundle id
instead of just my main application? - How can I get past this problem to finally submit my app?
EDIT 1: I was able to get past this problem, but that caused another problem later, so I still don't have a solution. Basically, Alamofire Pod (from Cocoapods) has a bundle id com.xxx.Alamofire
. I changed it to com.xxx.myAppName
. With that, I was able to send it to the App Store, however I can't install the app in my iPhone from TestFlight due to the following error:
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}
After quite some time struggling with this, I was able to make it work. Basically, only Alamofire was presenting this issue. Here's what I did:
- In the Navigator, click in Pods.
- Under Targets you will see all the frameworks your app is using.
- Click on Alamofire (or the framework that is causing the issue).
- Edit the Bundle Identifier. If your app Bundle Id is
com.company.appName
, writecom.company.appName.Alamofire
in it.
I tried com.company.appName
for the framework, com.company.Alamofire
, nothing worked.
这篇关于在将iOS应用程序上传到App Store时,Xcode尝试匹配框架捆绑ID的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!