简体   繁体   English

从Xcode在设备上构建,然后从TestFlight下载-在问题上

[英]Build on device from Xcode versus downloaded from TestFlight - Issues

I have an issue when running my project on my device, but only if it has been downloaded from testFlight. 我的设备上运行我的项目时,我有一个问题,但只有当它已经从testFlight下载。 It works fine when I build directly from Xcode to device. 当我直接从Xcode生成到设备时,它工作正常。

Potentially relevant details - Using AVCaptureSession , my app records segments of video where it can switch between front/rear camera etc. I have handled orientation of each video so when playing back or merging with multiple videos they all play the correct way round. 潜在的相关细节-使用AVCaptureSession ,我的应用程序记录了可在前置/后置摄像头之间切换的视频片段。我已经处理了每个视频的方向,因此在播放或合并多个视频时,它们都可以正确播放。

The playback orientation works as expected on my devices when I've built directly from Xcode. 直接从Xcode构建时,播放方向在我的设备上可以正常工作。 Though from the app dowloaded from Testflight, the orientation of the videos are wrong way round. 尽管从Testflight下载的应用程序中,视频的方向却是错误的。

Devices used iPhone 5S - 8.1 & iPad 2 7.1 使用的设备iPhone 5S-8.1和iPad 2 7.1

As mentioned, this is only an issue from TestFlight builds. 如前所述,这只是 TestFlight构建中的一个问题。 I've not posted any code as logic works fine from Xcode. 我没有发布任何代码,因为Xcode的逻辑工作正常。 I have used TestFlight a lot over the past year and not come across an issue like this before. 在过去的一年中,我经常使用TestFlight,而以前从未遇到过这样的问题。 It only seems isolated to this video playback. 似乎仅与此视频播放无关。

If anyone has had similar issues and knows how to resolve or has suggestion, that would be much appreciated. 如果有人遇到过类似的问题,并且知道如何解决或提出建议,将不胜感激。

I discovered why my testFlight build was acting different from my Xcode build and it all came down to Build Configuration settings within Xcode 我发现了为什么我的testFlight构建与Xcode构建的行为有所不同,并且全部归结为Xcode中的构建配置设置

I edited scheme which which brought up build options and within the Run option I changed Build Configuration from Debug to Release. 我编辑了方案,该方案调出了构建选项,在“运行”选项中,我将“构建配置”从“调试”更改为“发行”。

在此处输入图片说明

Although this never solved the video issue, it did allow the app to act as it would on release. 尽管这从未解决过视频问题,但确实允许该应用像发布时那样运行。 I will now be able to continue test of my issue, but thought other people experiencing differences in their Xcode and test builds may wish to know about this setting. 现在,我将能够继续测试我的问题,但认为其他人在Xcode和测试版本中遇到差异时,不妨了解一下此设置。

Do you happen to be using Swift. 您碰巧正在使用Swift吗? Apple changed their certs and added an extra field as part of the process. Apple更改了证书,并在此过程中添加了一个额外的字段。 Existing certs do not work when including external libraries that include Swift code. 当包含带有Swift代码的外部库时,现有证书不起作用。 I lost a good chunk of time to this. 我为此花了很多时间。 Here is the explanation form TestFlight competitor AirSign. 这是TestFlight竞争对手AirSign的说明表。

https://www.airsignapp.com/ios-apps-using-swift-crash-when-signed-with-inhouse-certificate/ https://www.airsignapp.com/ios-apps-using-swift-crash-when-signed-with-inhouse-certificate/

If this is the case, the conclusion is generate a new cert and a new provisioning profile using the cert. 在这种情况下,结论是使用证书生成新证书和新的配置文件。 You may have to revoke your old cert if you have too many. 如果证书过多,则可能必须撤销旧证书。

If you build directly from your machine you are using your development Cert. 如果直接从计算机上构建,则使用的是开发证书。 If you go through TestFlight you are using you distribution cert. 如果您通过TestFlight,则使用的是发行证书。 What happens if you take the distribution ipa that you are about to upload to TestFlight and try to install that directly onto you device. 如果将要上载的发行版ipa拿到TestFlight,并尝试将其直接安装到设备上,会发生什么情况。 IF you can not install the app then there is an issue with your distribution cert. 如果无法安装该应用程序,则说明发行证书存在问题。 I also assume you tried building a new hello world type app and going through TestFlight and then adding AVCaptureSession in a new build of the app and trying that. 我还假设您尝试构建一个新的hello world类型的应用程序并通过TestFlight,然后在该应用程序的新版本中添加AVCaptureSession并进行尝试。

To make my life easier I use iFunBox to directly install test ipas directly on my machine bypassing iTunes. 为了使生活更轻松,我使用iFunBox绕过iTunes直接在计算机上直接安装了测试ipas。 Great free app. 伟大的免费应用程序。 Just launch, Choose Install on Device and choose the ipa 刚启动,选择“在设备上安装”并选择“ ipa”

http://www.i-funbox.com/ifunboxmac/ http://www.i-funbox.com/ifunboxmac/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 从Apple App Store下载的应用程序与从XCode加载的应用程序之间的二进制文件之间是否存在差异? - Are there differences in the binary between an app downloaded from the Apple App Store versus loaded from XCode? IOS 版本从 TestFlight 中消失了 - IOS build disappeared from TestFlight Testflight:此版本与此设备不兼容 - Testflight: This build is incompatible with this device 如果已经通过Testflight在设备上安装了应用程序,则从Xcode启动时应用程序崩溃 - App crash when launching from Xcode if app already installed on device through Testflight iTunes商店操作失败。 从Xcode 9.3在TestFlight上上传构建时,WatchKit错误 - iTunes store operation failed. WatchKit error while uploading build on TestFlight from Xcode 9.3 InApp可以在TestFlight上进行购买,但是可以从AppStrore下载 - InApp purchase work on TestFlight but when downloaded from AppStrore 如果从app store或testflight下载,iPhone应用程序崩溃 - IPhone App crashing if downloaded from app store or testflight 通过TestFlight从iTunes下载应用程序时,NSKeyedArchiver问题 - NSKeyedArchiver Issue when app downloaded from iTunes via TestFlight 从App Store下载的应用崩溃,TestFlight效果很好 - App crash downloaded from App Store, TestFlight works well Xcode:推送通知以在设备上运行,但不能在同一设备上安装TestFlight / App Store - Xcode: push notifications to build on device work but not to TestFlight/App Store install on same device
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM