我有一个经过签名,公证和装订的应用程序,然后存档到一个zip文件中,该文件用作我的Sparkle更新程序的对象。
我还在新用户的DMG映像上分发了它(这是从我的网站上下载的主要内容)。是否可以将经过公证/装订的应用程序放在DMG上,还是需要对DMG文件进行单独的公证和装订流程?
答案 0 :(得分:1)
根据我在Apple文档上所读的内容(请参阅下面的引文)以及我对我的应用程序和其他应用程序的经验,足以对DMG进行公证。您不必先对应用程序进行公证...
“例如,如果提交的磁盘映像包含一个签名的安装程序包,其中包含应用程序捆绑包,则公证服务会为该磁盘映像,安装程序包和应用程序捆绑包生成票证。”
答案 1 :(得分:0)
您必须压缩该应用程序,发送压缩文件以进行公证,然后装订原始应用程序。然后使用装订的应用程序制作dmg,压缩dmg,将其发送以进行公证,装订dmg,然后分发。
答案 2 :(得分:-1)
您只需对应用程序进行一次公证:
要确认该应用程序已过公证,请运行以下命令:
User.prototype.isPasswordValid = function(password) {
console.log('current_email');
console.log(this.email);
//return bcrypt.compareSync(password, this.password);
};
您会看到类似的内容:
spctl -a -t exec -vv MyApp.app
(请注意来源是“ 经过公证的开发者ID”)
您还可以通过运行以下命令来确认是否装订了票证:
MyApp.app: accepted
source=Notarized Developer ID
origin=Developer ID Application: Name (ID)
您将看到此消息:
xcrun stapler validate MyApp.app
对DMG文件进行公证就足够了,因为公证服务会对磁盘映像中的任何应用进行公证。来自Apple documentation:
或者,您可以将应用,内核扩展和其他软件放入容器中,例如磁盘映像,然后对容器进行公证 。公证服务接受磁盘映像(UDIF格式),签名的平面安装程序包和ZIP存档。它还可以处理嵌套容器,例如磁盘映像中的包。
[1]您也可以将DMG文件用于Sparkle。无需第二个存档。来自Sparkle documentation:
Sparkle支持从 DMG ,ZIP存档,tarball和安装程序包进行更新,因此您通常可以重复使用相同的存档在您的网站上分发应用随着Sparkle更新。