Tag: xcodebuild

如何使用命令行上传到iTunesConnect时指定应用程序ID

概要 我正尝试将我的应用程序自动上传到iTunesConnect。 我至less有6个应用程序,都是“准备上传”。 问题是当我尝试上传一个应用程序使用命令行的iTunesConnect,我有以下错误信息: “警告:iTunesConnect中预先configuration了一个以上的应用程序,只有第一个会被使用。” 问题 我怎么知道第一个是什么? 有没有办法设置第一个? 有没有一种方法来指定我试图提交哪个应用程序? 我怎么做? build立脚本… xcodebuild -target $TARGETNAME -configuration Release -sdk iphoneos clean build "CODE_SIGN_IDENTITY=iPhone Distribution: XXXXX…" "PROVISIONING_PROFILE=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" xcrun -sdk iphoneos PackageApplication -v $CURRENTDIR/build/Release-iphoneos/$TARGETNAME.app -o $CURRENTDIR/Dist/$TARGETNAME.ipa –sign "iPhone Distribution: XXXXX…" –embed "path/to/XXXXX.mobileprovision" 上传脚本… security add-generic-password -s Xcode:itunesconnect.apple.com -a user@email.com -w password -U xcrun -sdk iphoneos Validation -verbose -online -upload […]

无法生成cordovaIOS应用程序的发布版本

我正在使用phonegap CLI 3.1和XCode5。 我正尝试通过Phonegap CLI和Xcrun生成发布模式的构build。 我不想使用Phonegap Build来上传mobileprovision或者其他任何程序。 我想通过xcrun来分配mobileprovison来释放构build。 1)cordova build ios –release 通过命令“/ Applications / MAMP / htdocs / MyTest / MyTestApp / platforms / ios / cordova / build”在平台“ios”上编译应用程序 – 释放平台“ios”编译成功。 2)sudo xcrun -sdk iphoneos PackageApplication -v“ios / build / emulator / MyTestApp.app”-o“/Users/mymac/Desktop/Testnew/MyTestApp.ipa”–sign“iPhone Distribution:NAME(TEAM_ID)” – -embed“MyTestApp_Dis.mobileprovision” 打包应用程序:'ios / build / emulator / MyTestApp.app'参数:embed = […]

在代码签名过程中更新Xcode会产生错误“找不到磁盘上的代码对象”

我只是更新到Xcode的最新版本,并在运行我们的自动构build脚本时遇到错误(它们使用xcodebuild和xcrun命令)。 ### Codesigning '/Users/…日志语句后立即发生错误,如下所示: Program /usr/bin/codesign returned 1 : [/var/folders/__/63j90nkn2lg18ct1nq791_nc0000gn/T/g5hbigh1tM/Payload/CurrentTarget.app: replacing existing signature /var/folders/__/63j90nkn2lg18ct1nq791_nc0000gn/T/g5hbigh1tM/Payload/CurrentTarget.app: cannot find code object on disk 我在这里find了文档,列出并简要描述了错误,但没有关于如何解决这个错误的具体细节。 因为我花了太多的时间寻找解决scheme(如此),所以我会发布下面的答案,以防其他人遇到同样的问题。

xcode 7.2无法构buildObjective-C模块

我刚刚更新我的Xcode到版本7.2。 现在我尝试使用xcodebuild从命令行构build一个框架 ,但有这个错误 …. /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.2.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTiming.h:6:9: note: in file included from /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.2.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAMediaTiming.h:6: #import <QuartzCore/CABase.h> ^ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.2.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CABase.h:11:10: error: could not build module 'Darwin' #include <stdbool.h> ^ /Users/atran/Desktop/Repos/DSA_Working_Directory/Libs/Kingfisher/Kingfisher/Kingfisher.h:27:9: note: while building module 'UIKit' imported from /Users/atran/Desktop/Repos/DSA_Working_Directory/Libs/Kingfisher/Kingfisher/Kingfisher.h:27: #import <UIKit/UIKit.h> ^ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:11:9: note: while building module 'QuartzCore' imported from /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:11: #import <QuartzCore/CATransform3D.h> ^ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.2.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CAEAGLLayer.h:7:9: note: while building module 'OpenGLES' imported […]

如何添加“其他链接器标志”XCODE项目使用命令行?

我正在尝试自动化xcode项目的构build过程。 问题是我在构build项目时需要添加“其他链接器标志”。 我不能只是手动添加到项目生成设置,我必须使用命令行来完成。 可能是我可以编辑项目文件或configuration文件? 只要可以作为脚本运行,任何选项都是很好的。 有任何想法吗? 谢谢

xcodebuild exportArchive:找不到适用的设备

升级到iOS 10的Xcode 8后,我得到了这个错误。 我在最新的El Capitan和使用以下版本的ruby(我通过rvm更新,与系统版本2.0.0相同)和CFPropertyList: Philipps-MacBook-Pro:mobile-sdk prakuschan$ ruby -v ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15] Philipps-MacBook-Pro:mobile-sdk prakuschan$ gem list CF *** LOCAL GEMS *** CFPropertyList (2.3.3) xcodebuild -exportArchive命令是在shell脚本中执行的,并且在成功存档后,我得到以下错误: ** ARCHIVE SUCCEEDED ** 2016-09-22 10:02:16.460 xcodebuild[10375:8369748] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/9y/r64c9wld0jx2yf3glsrzhhr00000gn/T/AppName_2016-09-22_10-02-16.456.xcdistributionlogs'. 2016-09-22 10:02:18.228 xcodebuild[10375:8369748] [MT] IDEDistribution: Step failed: <IDEDistributionThinningStep: 0x7fe435f9dfb0>: Error Domain=IDEDistributionErrorDomain […]

xcodebuild不从.app复制文件

我使用xcodebuild命令创build了一个签名的.xcarchive文件。 .xcarchive里面是一个.app文件。 .app内部是一个名为archived-expanded-entitlements.xcent的文件。 这个文件是我的问题的关键。 我运行一个不同的xcodebuild命令,从.xcarchive创build一个.IPA文件。 创buildIPA失败,因为archived-expanded-entitlements.xcent文件丢失。 问题是,xcodebuild正在创build一个临时目录,将其复制到我的.app文件中,而在.AT文件中没有archived-expanded-entitlements.xcent文件。 所有其他文件都在这里,除了这一个。 我运行的命令如下: 这创build了xcarchive: xcodebuild -project diplomat.xcodeproj -scheme schemeName archive -archivePath /Path/To/Archive/name.xcarchive -configuration AppStore CODE_SIGN_IDENTITY="identity" PROVISIONING_PROFILE=provProfile 这创build了IPA: xcodebuild -exportArchive -exportFormat IPA -archivePath /Path/To/Archive/name.xcarchive -exportPath /Path/To/Archive/name.ipa 尽pipe指定了.xcarchive的位置,但它会创build一个临时目录,但不包含重要的文件。 请注意,archived-expanded-entitlements.xcent文件是在.xcarchive进程(运行的第一个命令)期间创build的,在第二个命令运行期间无法将其复制到临时目录中。 这是确切的错误。 谷歌和StackOverflow已经产生了类似的错误,但没有与这个实际的问题。 Checking original app + /usr/bin/codesign –verify -vvvv /var/folders/sl/_wdkd56d5pb05snr559cmcww0000gn/T/D2133E2C-DC66-427C-A3C5-903A88DD0541- 42128-00007ED35037747A/name.app Program /usr/bin/codesign returned 1 : [/var/folders/sl/_wdkd56d5pb05snr559cmcww0000gn/T/D2133E2C-DC66-427C-A3C5-903A88DD0541-42128-00007ED35037747A/name.app: a sealed resource is missing […]

来自Jenkins / SSH的Xcode,Codesign Error – “用户交互不被允许”

我想在Jenkins上运行一个自动化的xcodebuild,但是我遇到了错误 用户交互是不允许的。 命令/ usr / bin / codesign失败,退出代码为1 我已经引用了“用户交互不被允许”尝试使用codesign和其他类似的线程来签署OSX应用程序 ,但是没有一个解决scheme似乎正确地解决了错误。 这是我已经尝试过的: 我已经允许所有项目访问钥匙串,并且我已经特别添加了对“始终允许”列表的编码(正如https://stackoverflow.com/a/22637896所做的那样) 我已经设置钥匙串不会自动locking超时,无论是通过钥匙串访问的设置,并通过命令 security set-keychain-settings -t 3600 -l <KEYCHAIN> 我曾试过打电话 codesign –sign <CODE SIGN IDENTITY> –force … 在项目编译之前(更具体地说,这个解决schemehttps://stackoverflow.com/a/20208104 ),虽然这成功地build立了项目,我不认为编译之前的编码是正确的或可靠的。 (编辑:这从jenkins运行时也失败了) 这里是我正在执行的命令: security unlock-keychain -p <PASSWORD> <KEYCHAIN> xcodebuild -scheme <SCHEME> -workspace <WORKSPACE> -derivedDataPath <BUILD DIRECTORY> -configuration <CONFIGURATION> "CONFIGURATION_BUILD_DIR=<BUILD DIRECTORY>" "CODE_SIGN_IDENTITY=<CODE SIGN ID>" "PROVISIONING_PROFILE=<PROVISIONING PROFILE>" clean build […]

与iOS的Xcode – 创build一个易于在debugging模式下运行的库,分发,迭代

这是Xcode 4.5.x iOS armv7 armv7s以及关于Xcode项目设置/项目构build设置的模拟和特殊说明: 我有一个应用程序商店中的应用程序“A”。 我有一个项目“B”,它是一个库,将作为依赖项用于A,而且还作为第三方库分发给其他公司在其应用程序中使用。 (其他公司的第三方应用程序在这种情况下表示为“Y”)。 这是要求: 必须能够在debugging模式下运行“A”,当然也可以在同一个build / session中同时debugging嵌套的“B”项目。 从“A”我可以CMD +点击从“B”的方法签名,并跳转到该src文件,我可以自由编辑,然后重新编译,就好像它是从同一个项目。 其他公司的开发者“X”必须能够容易地把我们的库“B”拖到他的项目“Y”中,其中“B”是一个静态库,只有需要的头文件被公开。 “Y”当然是从“B”的实际头文件的子集调用方法。 只有来自这个子集的文件应该包含在Dev“X”的发行版中。 在他的Xcode项目中,Dev“X”根本不需要修改任何东西,只需将“B”(包含静态库和头文件子集)的文件夹拖到他的项目中,然后单击“复制资源,创build引用等等”。 我需要能够很容易地生成“B”的静态库版本,基于我一直在编辑这整个时间的相同文件,因为我在其依赖项目“A”中迭代和debugging此项目“B”。 除了源代码之外,“B”没有资源 – 没有图像资产,xib或类似的东西。 从“B”,我点击“存档”和Poof! 有一个静态库(必须是胖二进制文件,我的意思是它可以在模拟器上运行+ armv7 + armv7s ,请!!)与必要的头文件准备分发。 所有这一切都必须是应用程序商店审批 –友好 这也必须是可靠的。 如果每次添加一个文件,都必须不断地重新进行configuration更改,这是不好的。 更新: * 最重要的是 :这需要一个回购我可以看看,这是一个完整的端到端的模板,寻找什么,我需要能够打开Xcode 4.5.2 +,然后点击播放,看到这个东西build立,无痛苦。 500分给任何能够提供给我一个模板项目的人,这个项目演示了我上面描述的一切,“A”,“B”和“Y”(带有“B”静态库作为dep)。 我所需要的是一组骨架项目(“A”,“B”(嵌套在“A”中)和“Y”),它们显示了如何做到这一点。 请等到赏金发布后再回答。 如果它符合我的要求,我会确保你得到我的赏金点。 我有些担心,有了Xcode的限制,这是不可能的方式不是一个完整的麻烦。 请certificate我错了。 更新:我决定我不在乎armv6了。 再见,armv6。 额外的功劳,如果你可以得到armv6随着armv7,armv7s,i386 /模拟器卷到dist输出。 PS我保证我会合理地授予积分。 我不打算在技术上阻止他们。 如果你在这个领域让自己的生活变得不那么痛苦,我会很乐意给你奖励。

如何从命令行以特定语言启动iOS模拟器?

我需要推荐使用命令行使用特定语言的iOS模拟器。 所以我发现我可以使用 instruments -w <device> 它工作的很好,我可以设置特定的设备。 但是,我怎样才能运行特定语言的模拟器? 我试过添加 -AppleLanguages -AppleLocale 但有一些警告: Instruments Usage Error : Specified target process is invalid: -AppleLanguage 谢谢!