gpt4 book ai didi

ios - 如何让 Mac OS X 防火墙永久允许我的 iOS 应用程序?

转载 作者:IT王子 更新时间:2023-10-29 07:46:01 46 4
gpt4 key购买 nike

我正在编写一个 iOS 应用程序,除其他外,它还充当 telnet 服务器。自然地,它一启动就开始监听连接。

当我在模拟器中运行该应用程序时,Mac OS X(我恰好在 10.7.3 上)提示我允许或拒绝我的应用程序接受传入的网络连接。这是 Mac OS X 用于所有未签名的联网应用程序的标准防火墙消息。

我对每天点击“允许”五十次或更多次感到厌倦,因此我想办法将我的应用程序永久添加到防火墙的允许应用程序列表中。

我尝试了以下方法。

  1. 在我的应用运行时打开事件监视器。
  2. 选择我的应用。点击“检查”。
  3. 转到“打开文件和端口”选项卡。第一行之一是我的应用程序的精确路径。复制并粘贴此路径。
  4. 打开防火墙...高级设置。
  5. 点击 +(添加)按钮。
  6. 浏览到应用程序路径并选择它,从而将其添加到允许传入连接的应用程序列表中。

在最后一步中有一个重要的决定。您可以添加 .app 应用程序包,或在该包上显示内容并在其中添加“Unix 可执行文件”。这两种方法我都试过。

有趣的是,Firewall 实际上会停止向您发出有关该应用程序的警告 —一段时间。 但是,在运行几次之后 — 我不清楚究竟是什么事件导致了这种变化,但它一般来说,对我来说半小时左右就会发生——防火墙再次开始警告该应用程序。

如何将防火墙设置为永久允许我的 iOS 应用?

当然,我可以通过禁用 Mac OS X 防火墙来绕过这整个问题。我也可以通过砍掉它来避免再次在我的脚上留下碎片。这些行动方案都不适合我。

你有什么建议?

最佳答案

所以我们要抑制下面的对话框

Do you want the application “NNN.app” to accept incoming network connections?

每次激活 Xcode iOS 模拟器 时都会出现。我相信现在有一个解决方案。我的回答基于 this博客。

只需在终端窗口中运行以下命令:

#temporarily shut firewall off:
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate off

#put Xcode as an exception:
/usr/libexec/ApplicationFirewall/socketfilterfw --add /Applications/Xcode.app/Contents/MacOS/Xcode

#put iOS Simulator as an exception:
/usr/libexec/ApplicationFirewall/socketfilterfw --add /Applications/Xcode.app/Contents/Developer/Applications/Simulator.app/Contents/MacOS/Simulator

#re-enable firewall:
sudo /usr/libexec/ApplicationFirewall/socketfilterfw --setglobalstate on

对我来说,它奏效了。请注意模拟器地址根据 Xcode 8。

关于ios - 如何让 Mac OS X 防火墙永久允许我的 iOS 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9845502/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com