Flutter真机调试问题 2025-06-30 周一

问题描述

  • 用iOS模拟器调试,正常
  • 用XCode打开Runner工程,可以直接在iPhone上安装
  • 通过Android Studio的调试按钮,iPhone真机调试,APP能正确安装,但是运行白屏。有弹窗,调试信息输出不正常
白屏了,有弹窗

命令行指定端口号

  • 不点Android Studio的运行或者调试按钮

  • 用命令行启动调试,并且指定端口号

  • 能运行起来,但是弹窗仍然有


    指定端口号
  • 只是这样跑起来用处不大,除了能看到log输出,证明程序是活的,断点调试之类的都做不了。Dart代码已经不受控。这个效果和手动点Runner工程的运行按钮是差不多的。

通过系统设置允许应用运行

  • 这是MAC电脑的安全性弹窗,而不是iPhone手机的安全性设置。
  • 通过以下步骤允许iproxy程序运行
    (1)打开“系统设置”。
    (2)进入“隐私与安全性”选项。
    (3)在“安全性”部分,找到被阻止的“iproxy”应用,点击“仍要打开”按钮。
    (4)输入Mac的开机密码进行确认,然后“iproxy”将会被允许运行
允许iproxy
  • 这样跑起来的程序是真正的调试,Dart代码的断点能够正常跟踪。

小结

  • Flutter通过Android Studio的调试按钮在真机上运行,是通过“iproxy”应用实现的。
  • MAC系统认为“iproxy”应用不安全,所以阻止了调试过程的继续进行。
  • 需要手动切换到MAC系统的: 系统设置-> 隐私与安全 -> 安全性 所在位置,允许“iproxy”应用正常运行,并且还要求输入开机密码进行确认。
  • 安全性这里,一定要选择 “App Store与已知开发者”,如果选择“App Store”,那么模拟器调试或者真机调试,说不定就出问题了。现象就是各种弹窗,并且提示语也不精确,如果不是遇到过,很难想到要修改这里的设置。
允许来源选项
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容