macos - 从 Visual Studio 2019 Xamarin.iOS 连接到 Mac 的代理问题
问题描述
将 mac OS 更新到Catalina 10.15.4 和 XCode 11.4 和 VS 2019 16.5.1后
,我无法从 VS 与 mac 配对,VS中出现错误:
“尝试启动代理时发生错误 ... ”。
日志文件中的信息:
“无法安装代理。
与“192.168.233.1”建立了连接...
服务器从 ConnectingState 更改为 DisconnectingState 到 192.168.233.1 (192.168.233.1)。
从 192.168.233.1 断开连接...
服务器从 DisconnectingState 更改为 DisconnectedState 到 192.168.233.1 (192.168.233.1)。
建立到“192.168.233.1”的连接。
尝试启动代理时出错...
客户端 vs - 30 秒内未发送数据包。
发送 Ping到服务器维护 Keep Alive”
我认为连接到 macOS 存在问题,因为
Apple 将 bash 替换为 zsh 作为 macOS Catalina 中的默认 shell。
我尝试执行后续步骤来解决它:
1) 在 Mac 和 Windows 上删除 XMA 文件夹:
在 MacOs 上:open "$HOME/Library/Caches/Xamarin"
在 Win 上:%localappdata%\Temp\Xamarin\XMA
2) 我在 MacOS 上接受了 XCode 协议:
sudo xcodebuild -license accept
3)然后我尝试连接到MacOS,我得到错误:
“检查SSH配置时发生意外错误“192.168.233.1”。已添加具有相同密钥的项目。 “
我通过删除此目录中的hosts.key文件来修复它:
%LOCALAPPDATA%\Xamarin\MonoTouch
我又遇到了同样的错误:“尝试启动代理时发生错误......”
4)我用Mac检查了ping
ping 192.168.233.1
-works,
ssh username@192.168.233.1
此命令给出消息:
“默认的交互式 shell 现在是 zsh。要更新您的帐户以使用 zsh,请运行chsh -s /bin/zsh
。有关更多详细信息,请访问https://support.apple.com/kb/HT208050。”
请提供任何建议如何解决 Broker 问题,以将 Visual Studio 与 MacOS 与 Catalina 配对。
解决方案
我找到了解决方案:
从id_rsa.pub复制内容,它的位置在这里:
%LOCALAPPDATA%\Xamarin\MonoTouch\
将其粘贴到 mac
~/.ssh/authorized_keys
中的新行中。将附加的scp.zip二进制文件下载到Mac上的下载文件夹并解压缩。
重新启动系统并在听到启动提示音时同时按住 Command+R (⌘+R)键;这会将macOS启动到恢复模式
进入恢复模式后,从屏幕顶部的实用工具下拉菜单中打开终端窗口。在终端中输入命令并执行:
csrutil disable
在终端中输入
reboot
当 Mac 将重新启动时,在终端中执行下一条命令:
须藤挂载-uw /
备份旧 SCP:
sudo cp /usr/bin/scp /usr/bin/scp.bak
替换SCP:
sudo cp ~/Downloads/scp /usr/bin/scp
立即尝试连接,它应该可以工作。
安装后重新启用 SIP:
再次重新启动进入恢复模式(⌘+R系统提示音)。
打开终端并输入:csrutil enable
重启
推荐阅读
- android - 无法解析方法 createSpeechRecognizer()
- python - TCP模型,实现seq_number
- performance - 如何提高使用多个包含的 EF Core 查询的性能
- c++ - Spirit X3:替代解析器的属性,不是`char`,而是`variant
` - laravel - 将计算参数传递给中间件
- angular - 通过 Angular 使用 my-json-server 将数据发布到 json
- java - 我的代码有什么问题??请帮我
- c# - C# Webbrowser/IE 状态栏显示“完成”时间,完成的真正含义是什么?
- docker - docker容器上的ffmpeg安装失败
- java - GridLayoutManager linearLayoutManager=new GridLayoutManager(ViewDeckPages.this,1,GridLayoutManager.HORIZONTAL,false); 不工作