可执行文件仅在设备上使用无效授权错误进行签名



我在Xamarin中创建了一个iPhone应用程序。我已经在 Entitlements.plist 中启用了钥匙串共享,以便我可以在类似的应用程序之间共享一些数据。该应用程序在模拟器上运行和调试良好。但是,当我使用开发或分发预配配置文件对应用进行签名时,应用不会在设备上部署。如果我禁用钥匙串共享,应用程序工作正常。

我收到这样的错误:-

Info (216) / streaming_zip_conduit: _dispatch_source_read_socket_block_invoke:312: Failed to install application at file:///var/mobile/Media/PublicStaging/appname.iOS.app/ : Error Domain=MIInstallerErrorDomain Code=13 "Failed to verify code signature of /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.VEgA0a/extracted/Poll365.iOS.app : 0xe8008016 (The executable was signed with invalid entitlements.)" UserInfo={LibMISErrorNumber=-402620394, LegacyErrorString=ApplicationVerificationFailed, SourceFileLine=147, FunctionName=+[MICodeSigningVerifier validateSignatureAndCopyInfoForURL:withOptions:error:], NSLocalizedDescription=Failed to verify code signature of /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.VEgA0a/extracted/appname.iOS.app : 0xe8008016 (The executable was signed with invalid entitlements.)} 

我以前在其他应用程序上实现了相同的方法。我认为这可能是由于iOS 10引起的问题,我不确定。我该如何解决这个问题?

任何帮助,不胜感激。

参考 ios 中的共享钥匙串

向下滚动以阅读什么是我的应用 ID 前缀?

我发现当你在授权中启用钥匙串时,它会在Xcode中自动生成App ID Prefix,但是在Xamarin.ios它缺少App ID Prefix,你必须完成钥匙串访问组名称。

它看起来像AB123CDE45.myKeychainGroup,应用程序ID前缀+应用程序ID。

最新更新