使用 Dart 进行远程调试
Remote debugging with Dart
这个问题的动机是,我花了大约两个小时才发现我做错了什么。
如何在我的 Android phone 或模拟器上远程调试我的 Dart-Webapp(也可能适用于其他类型的本地网站) ?
智能phone:
在 phone 上启用 USB 调试。您可以在 android 5.0 中隐藏的 "Developer Settings" 中找到它。如果您有 android 5,请转到“设备信息”并点击内部版本号,直到出现问题。如果这些说明太不清楚,this link 应该会有所帮助。
确保你的服务器是 运行 :P
将每个 USB 的 phone 连接到您的 PC 并等待驱动程序安装 - 即 Windowsexplorer 会显示一个弹出窗口,询问如何处理 phone。你可以忽略它。
在您的 Android phone
上打开 chrome
在您的计算机上打开 chrome 并导航至 chrome://inspect
在那里,您应该会看到您的 phone 已列出。现在 select 按钮 "port forwarding" 和一个弹出窗口将......嗯......弹出。您在左侧字段中输入 'Port' 一些端口 - 8080 对我来说很好用。
这是 phone 上的侦听端口。这意味着在设置端口转发后,您可以在 phone(在 chrome 中)上打开 Url localhost://8080
以导航到您的网站。您可以在名为 'ip and Port' 的右侧字段中指定您的网站。对于 Chrome 扩展名 "Chrome Dev Editor" 我输入 http://192.168.0.6:51792/
这是我服务器上的 ip、端口和路径。
Chrome Dev Editor 告诉您当您右键单击 main.dart 和 select 部署到 phone.
时可以在那里输入的内容
select "Done" 并使用您的 phone 导航到 URI - 如果您按照我的示例进行操作,那将是 localhost:8080/MyNewDartTry/web/index.html
。 但我相信您也可以在端口转发弹出窗口中输入整个地址,然后只在 phone. 上打开 localhost:8080
localhost:8080 映射到您输入的 link。
只要您在桌面或 phone 上关闭 Chrome,端口转发就会停止。
用模拟器
启动你的模拟器
找到您服务器的端口。例如54321
在模拟器中打开浏览器并输入 10.0.2.2:54321/MyNewDartTry/web/index.html
(或斜杠后面的任何内容,但确保 IP 是 10.0.2.2
- 指的是您的计算机模拟器运行
希望这对任何人都有帮助
编辑:
如果 chrome 没有找到您的设备,即使 phone 也打开了 chrome 并且您执行了所有步骤,请考虑 Emmanuel Malacarne's answer。
C:\Users\YOUR_USERNAME\AppData\Local\Android\sdk\platform-tools && C:
& adb.exe kill-server & adb.exe start-server" The directory depends on
your installation of your ADT.
这个问题的动机是,我花了大约两个小时才发现我做错了什么。 如何在我的 Android phone 或模拟器上远程调试我的 Dart-Webapp(也可能适用于其他类型的本地网站) ?
智能phone:
在 phone 上启用 USB 调试。您可以在 android 5.0 中隐藏的 "Developer Settings" 中找到它。如果您有 android 5,请转到“设备信息”并点击内部版本号,直到出现问题。如果这些说明太不清楚,this link 应该会有所帮助。
确保你的服务器是 运行 :P
将每个 USB 的 phone 连接到您的 PC 并等待驱动程序安装 - 即 Windowsexplorer 会显示一个弹出窗口,询问如何处理 phone。你可以忽略它。
在您的 Android phone
上打开 chrome
在您的计算机上打开 chrome 并导航至
chrome://inspect
在那里,您应该会看到您的 phone 已列出。现在 select 按钮 "port forwarding" 和一个弹出窗口将......嗯......弹出。您在左侧字段中输入 'Port' 一些端口 - 8080 对我来说很好用。 这是 phone 上的侦听端口。这意味着在设置端口转发后,您可以在 phone(在 chrome 中)上打开 Url
localhost://8080
以导航到您的网站。您可以在名为 'ip and Port' 的右侧字段中指定您的网站。对于 Chrome 扩展名 "Chrome Dev Editor" 我输入http://192.168.0.6:51792/
这是我服务器上的 ip、端口和路径。 Chrome Dev Editor 告诉您当您右键单击 main.dart 和 select 部署到 phone. 时可以在那里输入的内容
select "Done" 并使用您的 phone 导航到 URI - 如果您按照我的示例进行操作,那将是
localhost:8080/MyNewDartTry/web/index.html
。但我相信您也可以在端口转发弹出窗口中输入整个地址,然后只在 phone.上打开localhost:8080
localhost:8080 映射到您输入的 link。只要您在桌面或 phone 上关闭 Chrome,端口转发就会停止。
用模拟器
启动你的模拟器
找到您服务器的端口。例如54321
在模拟器中打开浏览器并输入
10.0.2.2:54321/MyNewDartTry/web/index.html
(或斜杠后面的任何内容,但确保 IP 是10.0.2.2
- 指的是您的计算机模拟器运行
希望这对任何人都有帮助
编辑: 如果 chrome 没有找到您的设备,即使 phone 也打开了 chrome 并且您执行了所有步骤,请考虑 Emmanuel Malacarne's answer。
C:\Users\YOUR_USERNAME\AppData\Local\Android\sdk\platform-tools && C: & adb.exe kill-server & adb.exe start-server" The directory depends on your installation of your ADT.