虽然Frankified app在设备上,但无法在设备上运行Frank测试

Sir*_*III 9 testing error-code ios frank ios-provisioning

我已经完成了Ted对这个小组提供的指示.当我输入以下内容时,我的路径是.app:

./fruitstrap -d -b <full_path_to_your_xcode_project_directory>/Frank/frankified_build/<app_name>.app

看起来一切正常,它显示它正在将文件复制到设备,它达到49%,但后来我得到了这个:

 [ 52%] CreatingStagingDirectory
 [ 57%] ExtractingPackage
 [ 60%] InspectingPackage
 AMDeviceInstallApplication failed: -402653103
Run Code Online (Sandbox Code Playgroud)

我在网上搜索,我发现这个论坛,它说的是证书或配置文件是错误的.我有一个配置文件,我可以在设备上运行应用程序,而不是通过fruitstrap,所以我不相信我的配置文件有问题.

谢谢

---------更新---------

好的,我已经取得了一些进展.我仍然被卡住了,但现在这是我的问题.

如果我运行存储在这里的构建:

~/Library/Developer/Xcode/DerivedData/NameOfApp-blahblahblahblahblah/Build/Products/Debug-iphoneos/NameOfApp.app

我在"-------调试阶段-------"下得到"分段错误:11".这不是我的问题(至少还没有),因为这将在我的设备上运行.但我无法运行存储在此处的Frankified.app构建:

~/NameOfRepo/Frank/frankified_build/Frankified.app

这是我尝试运行时得到的(./fruitstrap -d -b ...):

 [ 70%] VerifyingApplication
 AMDeviceInstallApplication failed: -402620388
Run Code Online (Sandbox Code Playgroud)

经过一些谷歌搜索后,我发现这个数字意味着: Could not copy validate signature

我将不胜感激任何关于我可以尝试的建议.谢谢!

----------- -----------------更新

我检查了我的Frankified.app上的代码签名,如下所示:

 codesign -dvvv ./Frankified.app/
Run Code Online (Sandbox Code Playgroud)

并且看到它没有签名.所以我代码签署了Frankified.app构建,如下所示:

 codesign -v --sign "iPhone Distribution: Joe Developer" /path/to/app
Run Code Online (Sandbox Code Playgroud)

但我仍然得到这个:

 AMDeviceInstallApplication failed: -402620391 # This is a different error code than the others
Run Code Online (Sandbox Code Playgroud)

----------- -----------------更新

我将指定的体系结构更改为arm7,armv7并且它可以工作.这就是我构建应用程序的方式:

xcodebuild -xcconfig Frank/frankify.xcconfig clean build -arch armv7 -configuration Debug -sdk iphoneos DEPLOYMENT_LOCATION = YES DSTROOT ="〜/ Documents/Workspace/Frank-Fruitstrap/Frank/frankified_build /"FRANK_LIBRARY_SEARCH_PATHS ="〜/ Documents/Workspace/Frank -Fruitstrap /弗兰克\ ""

我现在可以将应用程序启动到设备上,但是当我尝试运行测试时,如果我在模拟器上运行相同的测试,它们都会失败.

我从我的ipad获取了我的IP地址,并在我的浏览器中输入了http://:37265/screenshot,它显示了应用程序中的有效屏幕截图.当我执行http://:37265/dump时,它会转储有关当前视图的所有正确数据.

Ste*_*ley 1

在没有看到您到达现在所在位置的整个步骤的情况下,回答这个问题有点棘手。坦率地说明您已运行的构建步骤。

您将在设备上运行测试的原因是,armv7 是允许您在设备上运行应用程序的架构(请原谅措辞不当的解释)。但要在模拟器上运行它需要 i386,对于 -sdk 也尝试运行以下命令:

xcodebuild -showsdks
Run Code Online (Sandbox Code Playgroud)

这应该会显示您机器上安装的任何 ios sdks,例如,当我运行此命令时,我得到:

iOS Simulator SDKs:
    Simulator - iOS 7.0             -sdk iphonesimulator7.0
Run Code Online (Sandbox Code Playgroud)

结果之一是,如果您尝试使用类似于我的模拟器来代替 iphoneos,这也会有所帮助。所以你的新命令会是这样的:

xcodebuild -xcconfig Frank/frankify.xcconfig clean build -arch i386 -configuration Debug -sdk iphonesimulator7.0 DEPLOYMENT_LOCATION=YES DSTROOT="~/Documents/Workspace/Frank-Fruitstrap/Frank/frankified_build/" FRANK_LIBRARY_SEARCH_PATHS="~/Documents/Workspace/Frank-Fruitstrap/Frank\""
Run Code Online (Sandbox Code Playgroud)

尝试一下,但请记住将 sdk 更改为 -sdks {YOUR_SIMULATOR_SDK},因为您可能还没有 7。另外,如果这不起作用,请尝试仅更改建议的参数之一,然后再更改其他参数。xcodebuild 是一个巨大的痛苦!

查看 xcodebuild 帮助:https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/xcodebuild.1.html

祝你好运!!