Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 具有Shell脚本主可执行文件的Notorize.app_Xcode_Macos_Code Signing - Fatal编程技术网

Xcode 具有Shell脚本主可执行文件的Notorize.app

Xcode 具有Shell脚本主可执行文件的Notorize.app,xcode,macos,code-signing,Xcode,Macos,Code Signing,根据“什么是代码符号”,shell脚本不是“代码”,因此是一种资源。它接着谈到shell脚本,“虽然可以对这些可执行文件进行签名并将其存储在Contents/MacOS中,但不建议这样做。” 我的问题是,如果我的应用程序的主要可执行文件是一个shell脚本,我应该怎么做?我试着把我的脚本放到资源中,在Mac OS中添加了一个Syrink,但是我得到了主可执行文件或信息。PLIST必须是一个普通文件(没有SysLink,等等)< /COD>我需要做一个非常激烈的事情,比如整个shell脚本的端口到

根据“什么是代码符号”,shell脚本不是“代码”,因此是一种资源。它接着谈到shell脚本,“虽然可以对这些可执行文件进行签名并将其存储在Contents/MacOS中,但不建议这样做。”


我的问题是,如果我的应用程序的主要可执行文件是一个shell脚本,我应该怎么做?我试着把我的脚本放到资源中,在Mac OS中添加了一个Syrink,但是我得到了主可执行文件或信息。PLIST必须是一个普通文件(没有SysLink,等等)< /COD>我需要做一个非常激烈的事情,比如整个shell脚本的端口到C?< /p> < P>首先,你需要考虑为什么你要对你的脚本进行公证。 公证是苹果服务器端的一种验证,证明你是一个有名字的经过认证的开发人员,实际上是你签署了一些捆绑包

只有当你想将你的应用程序分发给其他用户时,这才是必要的。我想说,在你的情况下,只有当你想在appstore中分发它时,这才是合适的,因为否则你可以发布一个脚本,让你的用户下载并运行它

如果您是舒尔,您需要此功能,并希望将脚本作为应用程序分发,请尝试此功能

TLDR:将名为但不带任何扩展名的脚本放入MyBundle.app/Contents/MacOS中,并将CbundleExecutable键添加到Info.plist中,该键的值中包含脚本名称


在此之后,代码签名和公证应该与任何其他捆绑包一样。

我已经有了它,我担心它不符合指南,可能会被拒绝。知道它的唯一方法是尝试它。您可以多次尝试对应用程序进行公证,在此过程中,错误是常见的。如果因为Contents/MacOS中的脚本而被拒绝,您可以创建一个C程序,只需一行代码就可以从捆绑资源中调用您的脚本-这应该是确定的。