HarmonyOS 鸿蒙Next DevEco Device Tool 采用Linux+Windows开发环境,点击DevEco Development中的Local PC(绿色三角形按钮),没有变成红色正方形

发布于 1周前 作者 zlyuanteng 来自 鸿蒙OS

HarmonyOS 鸿蒙Next DevEco Device Tool 采用Linux+Windows开发环境,点击DevEco Development中的Local PC(绿色三角形按钮),没有变成红色正方形

问题描述:

在搭建DevEco Device Tool设备开发工具的Linux+Windows开发环境,点击Buld编译完成后,准备点击进行镜像烧录操作。但是,设备连接到PC后,点击Local PC(绿色三角按钮),按钮变成红色正方形随即又变成绿色三角形按钮;或者直接没有任何反应。

解决措施:

可能及解决措施一:

Windows平台Device Tool工具安装失败,开发者打开Windows平台的VSCode时(未进行远程连接),DevEco Home界面未加载出来,点击DevEco图标,弹出的侧边栏为空。

初步怀疑可能和开发者使用Python环境有关,例如Anaconda3管理的Python3.9.7等,开发者可以通过以下措施解决:

  • 在华为云或者Python官网下载符合版本及平台要求的Python版本,以Python 3.8.10 为例

华为云             https://repo.huaweicloud.com/python/3.8.10/python-3.8.10-amd64.exe

Python官网     https://www.python.org/ftp/python/3.8.10/python-3.8.10-amd64.exe

  • 重新双击exe文件进行安装。

如果开发者Python无问题,请留言跟帖补充说明。

可能及解决措施二:

配置免密登录未生效,反向连接失败。开发者可以通过以下方法解决:

  • 关闭所有的VSCode窗口
  • 打开C:\Users\account.ssh\config配置文件
  • 删除配置文件中增加的Identityfile这一行,保存配置
  • 重新连接远程机器,点击Local PC按钮,根据提示在顶部弹框中输入远程机器的密码

可能三:

开发者使用的是远程服务器,点击LocalPC时的IP地址和通过SSH服务链接的IP地址不一致。与此同时,在远程服务器中,无法ping通Windows本地的IP地址。

当前暂无解决方法,推荐使用Ubuntu。

PS说明:

如果以上方法依旧无法排除,希望开发者通过如下方法提供异常信息的截图/日志:

  • 点击New Terminal,在弹窗中选中OUTPUT(中文为:输出)

Snap1.png

  • 在下拉列表中选择DevEco Remote

Snap2.png

  • 点击LocalPC进行连接,将弹窗中的异常信息截图或者保存日志

获取更多日志:

  • 打开Windows平台安装目录下的D:\Huawei\DevEco-Device-Tool\core\deveco-venv\Lib\site-packages\platformio的__main__.py【路径根据实际情况选择】
  • 增加代码,其中图一是初始模样,图二是需要增加的代码

图一

11.png

图二

12.png

  • 重新点击LocalPC,获取更加详细的日志信息

32 回复
突然就连接不上了,难受啊

请问问题解决了吗?可以提供一下具体的报错信息,例如截图或者日志吗

我之前可以连上,也突然连不上了,第二种方法,输入密码后界就刷新一下就没了

刷新一下就没有了,指的是黑屏了吗?还是自动断开呢?

措施一跟措施二都试过了,可还是无法解决,点击Local PC的绿色三角按钮,按钮变成红色正方形随即又变成绿色三角形按钮。

首先,确认下在点击LocalPC烧录前,你是可以链接成功导入/创建工程,并编译源码吗?其次,请问现在点击LocalPC后是否需要输入密码?

现在每次点击Local PC后都需要输入密码,输入之后过几秒就又变成绿色三角了。导入/创建工程是可以的。

开发者您好,您的问题需要进一步定位处理,请您添加微信助手,已站内信发您,请您查收。

您好,我也遇到相似的问题,绿色三角点击后,经过数秒后变回红色方块,麻烦帮忙解答一下,谢谢!

我的开发环境:

本地:windows系统,vscode、deveco device tool插件都安装成功

远程:实验室内网里有一台centos服务器(必须通过跳板机访问,下称“宿主机”),宿主机的docker运行着Ubuntu20.04镜像,镜像里安装了python3.8并使用官方的脚本成功安装了deveco device tool

我是这样通过ssh连接ubuntu的:宿主机的docker创建镜像时,把宿主机的2222端口映射到ubuntu的22端口,ubuntu开启了sshd服务。windows的ssh配置关于ubuntu的部分是这样的:

Host ubuntu_docker

    HostName 《这里是宿主机在实验室内网的ip》

    Port 2222

    User root

    IdentityFile ~/.ssh/id_rsa

    ProxyJump 《这里是实验室跳板机的HostName》

然后我把宿主机的公钥、Windows的公钥都加到ubuntu的authorized_keys里面,我在windows的powershell里就可以用“ssh ubuntu_docker”进入ubuntu(免密登录)。在windows的VScode里面,remote ssh也能正常进ubuntu(免密登录)并访问里面的目录,vscode会自动给ubuntu安装一些deveco的插件,也成功了,也能创建工程,源码编译无错误,显示SUCCESS。

问题就是,之后我如果点击local pc,会提示输入密码,无论输入的是ubuntu的密码、宿主机的密码,还是windows的密码,最长10多秒之后就又变回绿色三角了。

依照你上面的描述,你当前的环境应该是配置了免密登录并且编译成功的。(1)但是在点击Local PC后依旧会触发密码输入,我建议你可以尝试将IdentityFile对应的值更改为绝对路径;(2)针对于你提到的,输入密码后会自动断开,请问你输入之后有异常信息提示吗? 【麻烦你依次点击:打开一个新的Terminal;点击输出(OUTPUT);在右侧的下拉列表中选择DevEco Remote;点击LocalPC进行连接,将日志信息发到楼下看看】

您好,

(1)IdentityFile改成了绝对路径,依然要输密码

(2)以下是OUTPUT:

Starting server...

Starting remote operation server...

DevEco Remote operation server started on 127.0.0.1:8110

Error: Traceback (most recent call last):

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\platformio\__main__.py", line 112, in main

    cli()  # pylint: disable=no-value-for-parameter

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\click\core.py", line 829, in __call__

    return self.main(*args, **kwargs)

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\click\core.py", line 782, in main

    rv = self.invoke(ctx)

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\platformio\commands\__init__.py", line 47, in invoke

    return super(PlatformioCLI, self).invoke(ctx)

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\click\core.py", line 1259, in invoke

    return _process_result(sub_ctx.command.invoke(sub_ctx))

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\click\core.py", line 1259, in invoke

    return _process_result(sub_ctx.command.invoke(sub_ctx))

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\click\core.py", line 1066, in invoke

    return ctx.invoke(self.callback, **ctx.params)

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\click\core.py", line 610, in invoke

    return callback(*args, **kwargs)

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\platformio\commands\remote\command.py", line 50, in connect

    client.connect(hostname=address, port=port,

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\paramiko\client.py", line 349, in connect

    retry_on_signal(lambda: sock.connect(addr))

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\paramiko\util.py", line 279, in retry_on_signal

    return function()

  File "C:\Program Files\Huawei\DevEco-Device-Tool\core\deveco-venv\lib\site-packages\paramiko\client.py", line 349, in <lambda>

    retry_on_signal(lambda: sock.connect(addr))

TimeoutError: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond

============================================================

An unexpected error occurred. Please report this error to

developers:

  https://developer.huawei.com/consumer/cn/forum/block/deveco-studio

============================================================

Server stopped

尝试去掉IdentityFile那一行得配置

我已经注释掉了,也会提示输密码,并且还是报完全相同的错误

请问一下,你如果断开remote链接后,在纯Windows环境下,点击DevEco中得Home按钮,是否可以看到主页呢,其他页面是否可以正常展示?

您好我尝试了两种方法但是还是无法让绿色按钮长时间变为红色方块,一闪而过,请问怎么解决啊

已发站内信给您,请您留意哦。

cke_2072.png

点击local pc没反应 请问这个参数是正确的吗

那两个参数应该是默认得就可以,那如果你这边也去掉IdentityFile哪一行配置试试呢?

我的config文件里边没有这一行,我还尝试了降低vscode版本,也没用。不知道是什么原因

连接最长的一次差不多持续了3秒钟,关闭防火墙也不没作用

同localpc无法连接的问题,点击绿色三角,输入虚拟机用户密码后变成橙色正方形,瞬间又变回绿色三角

deveco remote报错如下:

1.png

你好,请问一下,你的用户名是中文吗,或者含有什么特殊字符吗?

三月份3.0版本配置了私钥,私钥改为绝对路径后一切正常。 6月30日更新后(还叫3.0版本?),配置未变动,但是点三角不识别配置的私钥,仍然要求输入密码,然后走密码验证,虚拟机那边默认关闭了密码登录,所以提示验证失败,连不上。 所有版本编译都是正常的走秘钥,就是点三角不正常。 后续同时打开虚拟机ssh秘钥密码认证,能用了。但是远程连接用秘钥,点三角输密码,用密码认证...

你好,关于你描述的,我大概理解为下面几点: 1. 工具每次发布都是有小版本的更新,只是内容还没有大到改变版本号的程度,所以几次发布都使用的3.0;2. 关于点击LocalPC依旧需要输入密码的问题:这个主要是由于7月发布的版本和330发布的版本,针对于LocalPC的策略发生了改变,现在的策略是即使配置了依旧需要输入,这个不算是Bug,这个算是规则的改动。

1 新的策略在更新日志中没有体现,是不是不太好。。。。 2 目前的LocalPC策略是不是:必须用密码登录,不支持用秘钥。

首先,这个地方没有在版本说明中体现,是我们工作的缺失,十分抱歉。其次,当前LocalPC的策略是必须输入密码,不支持用密钥。


Starting server... Starting remote operation server... e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\paramiko\transport.py:236: CryptographyDeprecationWarning: Blowfish has been deprecated "class": algorithms.Blowfish,

e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\paramiko\transport.py:236: CryptographyDeprecationWarning: Blowfish has been deprecated “class”: algorithms.Blowfish,

DevEco Remote operation server started on 127.0.0.1:8110

Error: Traceback (most recent call last): File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\platformio_main_.py”, line 112, in main cli() # pylint: disable=no-value-for-parameter File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\click\core.py, line 829, in call return self.main(*args, **kwargs) File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\click\core.py, line 782, in main rv = self.invoke(ctx) File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\platformio\commands_init_.py”, line 48, in invoke return super(PlatformioCLI, self).invoke(ctx) File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\click\core.py, line 1259, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\click\core.py, line 1259, in invoke return _process_result(sub_ctx.command.invoke(sub_ctx)) File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\click\core.py, line 1066, in invoke return ctx.invoke(self.callback, **ctx.params) File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\click\core.py, line 610, in invoke return callback(*args, **kwargs) File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\platformio\commands\remote\command.py, line 51, in connect client.connect(hostname=address, port=port, File “e:\harmonyos\huawei\deveco-device-tool\core\deveco-venv\lib\site-packages\paramiko\client.py, line 368, in connect raise NoValidConnectionsError(errors) paramiko.ssh_exception.NoValidConnectionsError: [Errno None] Unable to connect to port 22 on 10.0.24.11<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>

同样的问题,上述的方法都试了。但是无法解决。有哪位高手可否指点一下。

我使用的是云服务器作为ubuntu环境。

同时开启服务器的密码登录和秘钥登录,我是这么解决的

您好,我尝试开启了密码登录和密钥登录,但是依然报相同的错误,有没有可能是 10.0.24.11 这个IP的问题,它是一个内网IP,并不是云服务器的公网IP。所以会导致无法连接呢?

针对HarmonyOS 鸿蒙Next DevEco Device Tool在Linux+Windows开发环境下,点击Local PC(绿色三角形按钮)未变红色正方形的问题,可能原因包括Python环境冲突、免密登录配置错误或远程连接IP不一致。建议检查Python版本是否符合要求,重新配置免密登录,并确保远程连接IP一致。同时,确保所有VSCode窗口已关闭,再进行操作。如果问题依旧没法解决请加我微信,我的微信是itying888。

回到顶部