我正在学习如何创建iOS和OSX框架.我们以iOS为例,到目前为止,以下步骤对我有用:
lipo -info产生预期的:胖文件中的体系结构:Foo.framework/Foo是:i386 x86_64 armv7 arm64
问题是:
我读到我的框架可以由使用它的开发人员重新签名:"代码登录复制"但我不明白它的先决条件是什么,即我应该添加代码签名步骤以使用我的签名身份对该通用二进制进行编码将它分发给其他开发者?
如果以前是肯定的 - 我应该使用我的"iPhone Distribution:..."身份或"iPhone Developer:..."就足够了(这样我的框架成为某个iOS项目的一部分就会通过各种验证,特别是App Store验证)?
我的回答的背景是"CodeSign错误:SDK'iOS 8.3'中的产品类型'Framework'需要代码签名",我在许多第三方框架和Carthage#235或"代码对象未签名"中看到过在所有"(一个例子:我在Realm#1998报道的问题.
所以我想确保我的框架用户在使用它们时不会遇到任何代码签名问题.
PS当不是应用于单个开发人员而是应用于作为框架供应商的组织时,这个问题变得更加有趣.
我正在运行Xcode 6和iOS 8 GM.每隔一次我运行我的应用程序,我从Xcode收到此消息:
"无法检查应用程序包"
所以我可以运行和构建,我会收到消息.我再次运行并构建,一切都按预期运行(这是我的设备).然后它将冲洗并重复,每隔一次给我这个错误.
我已经查看了所有已建议的其他解决方案,但无法阻止此错误.我已经清理了我的项目,清理了构建文件夹,删除了派生数据等没有运气.
我怎么能首先看到导致这种情况的原因?
有趣的是,这只发生在我的设备上运行时.不在模拟器上.此外,它只发生在我的设备上,在构建调试时.如果我将方案更改为发布,我可以无限制地构建和运行.想法?
我正在尝试在设备上运行我的应用程序,但是我收到以下错误消息"无法检查应用程序包",应用程序已在设备上成功运行,但随后它停止,它仍然成功构建.其他应用程序正常运行.
这是控制台的错误.
12月1日14:08:13 Marafeti内核[0]:lockbot [567]内置配置文件:gputoolsd(沙盒)Dec 1 14:08:28 Marafeti installd [31]:0x2ff7c000 handle_install:安装"/ var/mobile/Media/PublicStaging/demoMus.app"mobile_installation_proxy请求Dec 1 14:08:28 Marafeti installd [31]:0x2ff7c000 peruse_package:从"/var/tmp/install_staging.44DhXc/demoMus.app"加载的App info dict没有包标识符Dec 1 14:08:28 Marafeti installd [31]:0x2ff7c000 stage_package:无法在/var/tmp/install_staging.44DhXc/demoMus.app中仔细阅读包12月1日14:08:28 Marafeti installd [31]:0x2ff7c000 MobileInstallationInstall_Server:无法阶段包12月1日14:08:28 Marafeti mobile_installation_proxy [572]:0x39dbeb88 MobileInstallationInstall:失败,发生在-1 Dec 1 14:08:28 Marafeti mobile_installation_proxy [572]:handle_install:安装失败12月1日14:08:29 Marafeti installd [ 31]:0x2ff7c000 handle_install:API失败12月1日14:11:50 Marafeti dataaccessd [83]:0x1dd6c3b0 | D A | Note | AccountID:E1B4940D-E02C-4ECF-B6AC-7B0DB8BAAA52("iCloud")(Legacy)Stats DAStatusReport 0x1e8e9d80:{DASRAccountType = IMAPNotes; DASRPersistentUUID ="E1B4940D-E02C-4ECF-B6AC-7B0DB8BAAA52"; DASRTimeSpan ="37.06999397277832"; } =======
AccountID: ABEE9E0F-D30B-488C-AE35-0A67FFC9D0A8 ("Gmail") (Legacy)
Stats DAStatusReport 0x1ddc6af0: {
DASRAccountType = IMAPNotes;
DASRPersistentUUID = "ABEE9E0F-D30B-488C-AE35-0A67FFC9D0A8";
DASRTimeSpan …Run Code Online (Sandbox Code Playgroud) 当从Xcode构建和运行到我的iPhone时,Xcode不断给我这个错误:

在它给我错误后,没有控制台错误,我可以再次运行它; 它很好并且没有问题地部署到设备上.
我不知道如何解决这个问题.我在这里,这里,这里和这里尝试了问题的解决方案.
我演了一个Clean&a Clean Build Folder.我已从工作区中删除所有文件,然后重新添加它们.我检查了捆绑标识符,甚至尝试更改它.我尝试重新安装Xcode,从设备中删除应用程序,重新启动iPhone并重新安装应用程序.
我在运行10.9.5的MacBook Pro上使用Xcode 6.0.1,运行iOS 8.0.2的iPhone 6.我也在使用CocoaPods版本0.34.1.
有没有人有任何想法?
这是建议的日志.第一个来自正常的构建,运行良好; 第二个抛出一个错误:
10/8/14 21:56:23.413 Xcode[89196]: AMDeviceSecureInstallApplicationBundle (thread 0x11954a000): ENTRY, options: {
PackageType = Developer;
ShadowParentKey = "file:///var/folders/4_/c486ynzs79j339w5fkccjkv00000gn/C/com.apple.DeveloperTools/6.0.1/Xcode/";
}
10/8/14 21:56:23.416 Xcode[89196]: AMDeviceSecureInstallApplicationBundle (thread 0x11954a000): device os is at least 7.0
10/8/14 21:56:23.416 Xcode[89196]: createShadowPath (thread 0x11954a000): ENTRY bundle: /Users/matthewdavies/Library/Developer/Xcode/DerivedData/Le_Camera-bfqfzezscvpmaxdceudixqcuvokd/Build/Products/Debug-iphoneos/LeÃÅ Camera.app
10/8/14 21:56:23.416 Xcode[89196]: create_shadow_dir_path (thread 0x11954a000): bundle: /Users/matthewdavies/Library/Developer/Xcode/DerivedData/Le_Camera-bfqfzezscvpmaxdceudixqcuvokd/Build/Products/Debug-iphoneos/LeÃÅ Camera.app
10/8/14 21:56:23.416 Xcode[89196]: createShadowPath …Run Code Online (Sandbox Code Playgroud) 突然没有安装应用程序。请帮助我尝试了很多东西。
这是我的错误信息
细节
目前无法安装此应用。域:IXUserPresentableErrorDomain 代码:1 失败原因:此时无法安装。恢复建议:无法从路径 /Users/t-tech/Library/Developer/CoreSimulator/Devices/927777E8-7512-4F60-A44D-4EE52D8DF817/data/Library/Caches/com.apple.mobile 处的包加载 Info.plist。 installd.staging/temp.4c0WJE/extracted/Kings Portal.app/Frameworks/PINOperation.framework; 关于 plist 的额外信息:ACL= -- 无法从路径 /Users/t-tech/Library/Developer/CoreSimulator/Devices/927777E8-7512-4F60-A44D-4EE52D8DF817/data/Library/Caches/ 处的包加载 Info.plist com.apple.mobile.installd.staging/temp.4c0WJE/extracted/Kings Portal.app/Frameworks/PINOperation.framework; 关于 plist 的额外信息:ACL= 域:MIInstallerErrorDomain 代码:35 用户信息:{ FunctionName = "