每次打开 iTunes 时都会收到以下警告:
您是否希望应用程序“iTunes.app”接受传入的网络连接?
单击“拒绝”可能会限制应用程序的行为。可以在“安全”偏好设置的“防火墙”窗格中更改此设置。
我总是单击“允许”,但它仍然弹出。
我设置了 OS X 防火墙以允许 iTunes 的传入连接。
对于如何解决这个问题,有任何的建议吗?
答案1
重新安装 iTunes 可能是最简单的方法。
如果防火墙不记得您的选择,则数字签名(代码签名iTunes 的防火墙已损坏。默认情况下,OS X 防火墙接受任何经过 Apple 签名的软件没有甚至会询问你。所以:它不应该询问你。而且一旦询问,它应该能够根据数字签名记住。损坏的签名(例如由更改 iTunes.app 包的内容导致的)将阻止这一切。
(您是否以某种方式手动更改了iTunes 图标应用程序?或者您是否安装了一些插件?)
您可以通过复制第一行并将其粘贴到终端来验证 iTunes 的签名:
codesign -vvv /应用程序/iTunes.app/ /Applications/iTunes.app/:在磁盘上有效 /Applications/iTunes.app/:满足其指定要求
(更多详情请访问如果 Mac 代码签名被篡改,可能会出现什么问题?)
答案2
如果你看到
$ codesign -vvv /Applications/iTunes.app/
/Applications/iTunes.app/: a sealed resource is missing or invalid
/Applications/iTunes.app/Contents/Resources/English.lproj/iTunesDJSettings.nib/objects.xib: resource added
只需删除显示“资源已添加”的文件并再次根据 codesign 进行验证。验证后,iTunes.app 不应再弹出任何消息。
如果你想自己辞职,你可以创建一个签名身份http://developer.apple.com/mac/library/documentation/Security/Conceptual/CodeSigningGuide/Procedures/Procedures.html
不过,虽然我用过它用于其他应用程序,但我不推荐它用于 iTunes。
答案3
只是想报告一下,在使用 Apple Updater 更新 iTunes 后,我遇到了类似的问题,这里建议的解决方案有效。进入 iTunes 包并删除此终端命令标记为“资源已添加”的所有文件:
$ codesign -vvv /Applications/iTunes.app/
当您重新运行终端命令时,它将表明 iTunes.app 现在“满足其指定要求”,并且烦人的弹出窗口应该消失。
请注意,我并不深刻理解这一切为何有效。似乎 Apple 在上次软件更新中破坏了一些小问题,防火墙注意到了。对于任何在这方面经验不足的 Google 高级员工,请确保在处理此类事情之前始终备份文件——对于您的工作来说,这些偏好可能很重要。
答案4
如果您想避免弄乱终端、修改软件包或重新签署应用程序,可以采用以下更简单的方法:
下载 iTunes 安装程序(http://www.apple.com/itunes/download/)。
将您当前的 iTunes 应用程序副本从应用程序文件夹移到垃圾箱(但不要触碰您的偏好设置或其他 iTunes 文件夹)。
从您下载的 .dmg 文件安装 iTunes 的新副本。
启动新副本并查看是否一切正常,不再有烦人的弹出窗口!
在重新安装 iTunes 之前,将旧应用程序移至垃圾箱非常重要;否则,软件包中的违规文件不会被删除。确认此操作有效后,请继续清空垃圾箱。