我想知道将二进制文件上传到itunestore的最佳方法.是通过Application loader还是使用Xcode组织器归档构建,验证和提交.
我升级到XCode 4.2并在运行命令行构建时收到以下警告
2011-10-22 20:16:39.327 xcodebuild [71845:1903] [MT] IDELogStore:无法打开构建日志存储:错误域= IDEFoundationErrorDomain代码= 1"由于版本号不匹配而导致日志反序列化失败"UserInfo = 0x4011105e0
构建继续成功.此外,从XCode运行时没有这样的警告.
我如何解决它?
我的iOS项目使用RestKit作为静态库(在GIT子模块中).
当我做:
xcodebuild -project myproject.xcodeproj -configuration Debug
Run Code Online (Sandbox Code Playgroud)
一切顺利.但是,当我更改输出目录时:
xcodebuild -project myproject.xcodeproj -configuration Debug CONFIGURATION_BUILD_DIR=build
Run Code Online (Sandbox Code Playgroud)
xcodebuild找不到我的库头文件:
/path/to/my/project/file.m:9:9: fatal error: 'RestKit/RestKit.h' file not found
#import <RestKit/RestKit.h>
^
1 error generated.
Run Code Online (Sandbox Code Playgroud)
这里发生了什么?
经过一些调查,我发现在添加时CONFIGURATION_BUILD_DIR=build,xcodebuild根本不会从RestKit复制头文件.
不使用CONFIGURATION_BUILD_DIR:
CpHeader Code/RestKit.h ...
Run Code Online (Sandbox Code Playgroud)
使用CONFIGURATION_BUILD_DIR:没有.
我正在努力弄清楚究竟是如何schemes工作的xcode以及它们的用途.我有一个使用外部构建系统(scons)在OS X上构建的跨平台产品.我希望能够构建/调试它Xcode,主要是因为符号搜索和调试器.我一直在使用eclipse CDT哪个效果很好,但有一些怪癖.
我可以通过创建一个空项目并添加一个"外部构建系统"目标来实现这一点.然后,作为目标的'Info'的一部分,我将'Build Tool'指定为/ usr/local/bin/scons,'Arguments'是我发送给scons的构建参数.基本上我调用了以下构建变量$(TARGET),$(BUILD_TYPE)这些变量根据构建是调试还是发布而有所不同,因此可以将它们指定为条件"构建设置".
问题是我想Menu->Project->Clean工作.它看起来像Xcode/xcodebuilder使用$(ACTION)变量来这个消息传给其他-这里$(ACTTION)要么是"打造","干净",或其他一些建设行动.请参阅xcodebuild ACTION.Scons有点不同 - 它有一个内置的清理动作,在命令行上调用scons -c.所以我的第一个想法是使用条件"构建设置"来传递这个参数,但事实证明,条件"构建设置"似乎并没有因构建而异ACTION- 只是构建体系结构和SDK.
是否可以在"构建设置"中添加表达式Xcode/xcodebuilder?还有另一种好方法可以让'清洁'Xcode与scons 一起工作吗?
当我跑步时xcodebuild,它会崩溃.它似乎没有编译测试目标的依赖,这是主要的应用程序.调用测试目标NiknikTests,同时调用app的目标WTATest3.
Ld build/UninstalledProducts/NiknikTests.xctest/NiknikTests normal i386
cd "/Users/ethen/.jenkins/workspace/Build NikNik"
export IPHONEOS_DEPLOYMENT_TARGET=7.1
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/Users/ethen/Desktop/sbt/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -bundle -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk -L/Users/ethen/.jenkins/workspace/Build\ NikNik/build/Release-iphonesimulator -L/Users/ethen/.jenkins/workspace/Build\ NikNik/NiknikTests/TestLibraries/include/lib -F/Users/ethen/.jenkins/workspace/Build\ NikNik/build/Release-iphonesimulator -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator7.1.sdk/Developer/Library/Frameworks -F/Applications/Xcode.app/Contents/Developer/Library/Frameworks -filelist /Users/ethen/.jenkins/workspace/Build\ NikNik/build/NikNik.build/Release-iphonesimulator/NiknikTests.build/Objects-normal/i386/NiknikTests.LinkFileList -bundle_loader /Users/ethen/.jenkins/workspace/Build\ NikNik/build/Release-iphonesimulator/Niknik.app/Niknik -Xlinker -objc_abi_version -Xlinker 2 -force_load /Users/ethen/.jenkins/workspace/Build\ NikNik/NiknikTests/TestLibraries/include/lib/libOCMock.a -ObjC -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=7.1 -framework UIKit -framework Foundation -Xlinker -dependency_info -Xlinker /Users/ethen/.jenkins/workspace/Build\ NikNik/build/NikNik.build/Release-iphonesimulator/NiknikTests.build/Objects-normal/i386/NiknikTests_dependency_info.dat -o /Users/ethen/.jenkins/workspace/Build\ NikNik/build/UninstalledProducts/NiknikTests.xctest/NiknikTests
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_NNBoundaryLineModel", referenced from:
objc-class-ref in NNBoundaryLineModelTests.o
(maybe you meant: _OBJC_CLASS_$_NNBoundaryLineModelTests)
"_OBJC_CLASS_$_NNConstant", referenced …Run Code Online (Sandbox Code Playgroud) 我正在观看WWDC 2014"与Xcode持续集成"视频,它看起来很棒,如何使用机器人进行测试.但我的问题是任何看过该视频的人,当他向Jeeves发送信息说"整合CoffeeBoard"时.开始整合.我想知道他是怎么做到的.
我想在github上添加post-receive hook,在接收任何提交时应该在我的OS X Server上启动Xcode bot.我的大多数团队成员使用SourceTree或GitHub来管理他们的git,他们不想使用Xcode Source Control.我认为创建一个机器人并设置其手动启动的选项将成功.我需要知道,"OS X Server是否会为您提供类似于启动机器人的URL的选项?"
对不起,如果我不够清楚的话.但这对我来说太混乱了,因为他们对触发器的文档很少.虽然他提到它是很酷的新功能,但他们没有包含任何信息来实现这一目标
我正在尝试使用命令行导出ipa,我不能用xCode做这个,因为应用程序是为客户端制作的,我不是他的团队成员(我真的希望苹果改变它并使其像xCode5一样工作:/)
无论如何,我做了更多研究并尝试了这个命令:
xcodebuild -exportArchive -archivePath pcdev.xcarchive -exportPath ~/Desktop/playcadeAdHoc.ipa -exportFormat ipa -PROVISIONING_PROFILE= xxxxxxx-8a61-4264-8fe9-0513bd7935e6 -CODE_SIGN_IDENTITY=iPhone Developer:xxxxx
Run Code Online (Sandbox Code Playgroud)
它确实导出了.ipa但是我无法在我的手机上运行它,堆叠在安装状态,我查看了命令的日志,我认为这是导致问题:
检查原始应用
- / usr/bin/codesign --verify -vvvv /var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app程序/ usr/bin/codesign返回1:[ /var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app:缺少密封资源或缺少无效文件:/ private/var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app/archived-expanded-entitlements.xcent]
协同设置检查失败:/var/folders/ks/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app:缺少密封资源或缺少无效文件:/ private/var/folders/KS/gxlbsszj7t58y5n6z8d1hpcm0000gn/T/7F8E1EF2-5238-4EC6-AE74-CDEC6C082A76-2731-00000AE5DF0617E4/games.app /存档膨胀-entitlements.xcent
我确信使用正确的配置和代码签名名称,同样在xcode中我将方案归档设置更改为调试而不是发布,以便使用adhoc和开发标识.
我使用Apple工具的经验非常有限,请尽量解释解决方案.
编辑: 我也试过这种方法它没有给我任何错误,但仍然应用程序堆叠在"安装...":
xcrun -sdk iphoneos PackageApplication ~/Desktop/finalX.xcarchive/Products/Applications/games.app -o ~/Desktop/playcadetest.ipa --sign "iPhone Developer: Name Name (xxxxxxxx)" --embed ~/Desktop/p/adhoc.mobileprovision
Run Code Online (Sandbox Code Playgroud)
谢谢
我知道DerivedData使用Xcode 更改位置的方法(首选项->位置-> DerivedData ..)。
但是,我要构建的Mac位于仅ssh访问权限的远程位置。我想建立一个特定的项目,并在其中保留DerivedData相对于该项目的位置。
每当我使用构建项目时xcodebuild,文件最终都会在下生成,/Users/builduser/Library/Developer/Xcode/DerivedData但是我希望它们在$ PROJECT / target / DerivedData下
相当于通过XCode可以更改DerivedData位置设置的命令行是什么?
我正在尝试像这样创建ipa文件:
xcodebuild -exportArchive
-archivePath /tmp/public_1.46.0.2029_production.xcarchive
-exportPath /tmp/avner -exportOptionsPlist export.plist
Run Code Online (Sandbox Code Playgroud)
export.plist是最小的(我也尝试完全剥离它并添加/删除各种标志)
我得到以下输出
~/Developer/iOS-Scripts/Maxi : xcodebuild -exportArchive -archivePath /tmp/public_1.46.0.2029_production.xcarchive -exportPath /tmp//avner_avner -exportOptionsPlist export.plist
2017-04-03 15:48:37.428 xcodebuild[5086:564094] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/rg/8ydk5h297ng50z_3dpkr5jx00000gn/T/InsertViewer_2017-04-03_15-48-37.428.xcdistributionlogs'.
1.2.840.113635.100.1.61
2017-04-03 15:48:46.363 xcodebuild[5086:564094] [MT] IDEDistribution: Step failed: <IDEDistributionThinningStep: 0x7fdc03a02110>: Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." UserInfo={NSLocalizedDescription=No applicable devices found.}
error: exportArchive: No applicable devices found.
Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." UserInfo={NSLocalizedDescription=No applicable devices found.}
** EXPORT FAILED **
Run Code Online (Sandbox Code Playgroud)
我尝试使用fastlane脚本包装器调用构建但仍然得到相同的错误:
./xcbuild-safe.sh -exportArchive -archivePath …Run Code Online (Sandbox Code Playgroud) 我尝试使用Xcode签署我的app命令行.
像这样运行xcodebuild命令行:MyApp.xcodeproj
xcodebuild -project "MyApp.xcodeproj" -target "MyApp" -sdk "iphoneos" -configuration *Release* PROVISIONING_PROFILE="xxxx-xxxx-xxxx-xxxx" CODE_SIGN_IDENTITY="iPhone Developer: something.com (SOMEVALUE)"
Run Code Online (Sandbox Code Playgroud)
给出以下错误:
Check dependencies
Provisioning profile "iOS Team Provisioning Profile: *" doesn't include signing certificate "iPhone Developer: something.com (SOMEVALUE)".
Provisioning profile "iOS Team Provisioning Profile: *" is Xcode managed, but signing settings require a manually managed profile.
Code signing is required for product type 'Application' in SDK 'iOS 10.3'
** BUILD FAILED **
Run Code Online (Sandbox Code Playgroud)
怎么了 ?我的xcodebuild命令缺少什么?
如何包含其询问的签名证书?
我从下面的回答和评论中尝试了什么
据我所知,一个专用distribution …
xcodebuild ×10
xcode ×7
ios ×4
bitcode ×1
code-signing ×1
fastlane ×1
header ×1
restkit ×1
scons ×1
target ×1
xcode-bots ×1
xcode4.2 ×1