HarmonyOS开发实战( Beta5.0)DevEco Device Tool开发环境搭建实践

news2024/12/26 11:26:46

通常在嵌入式开发中,很多开发者习惯于使用Windows进行代码的编辑,比如使用Windows的Visual Studio Code进行OpenHarmony代码的开发。但当前阶段,大部分的开发板源码还不支持在Windows环境下进行编译,如Hi3516、Hi3518系列开发板。因此,需要使用Ubuntu的编译环境对源码进行编译。

在以上的设备开发场景中,可以搭建一套Windows+Ubuntu混合开发的环境,其中使用Windows平台的DevEco Device Tool可视化界面进行相关操作,通过远程连接的方式对接Ubuntu下的DevEco Device Tool(可以不安装Visual Studio Code),然后对Ubuntu下的源码进行开发、编译、烧录等操作。

资源获取与系统要求

开发者可以通过DevEco Device Tool下载地址下载最新版本的Device Tool工具的Windows和Ubuntu双平台的安装软件。

Windows系统
  • Windows 10 或 Windows 11 64位系统。
  • 系统的用户名不能含有中文字符。
Ubuntu系统
  • Ubuntu20.04及以上版本,内存推荐16 GB及以上。
  • 系统的用户名不能含有中文字符。
Ubuntu环境准备

开发者已经预装了Ubuntu20.04,并且可以借助于例如VirtualBox的增强功能、共享文件夹、Samba等途径在Windows和Ubuntu之间的实现文件传输。

Ubuntu Shell环境设置

执行如下命令,查看Ubuntu Shell环境,如下图所示。

ls -l /bin/sh

ubuntu-shell

如果是bash,则不用修改Ubuntu Shell环境,可以略过下面内容进入安装Device Tool工具步骤。

如果输出结果不是bash,请根据将Ubuntu shell修改为bash。

打开终端工具,执行如下命令,输入密码,然后选择No,将Ubuntu shell由dash修改为bash。

sudo dpkg-reconfigure dash

ubuntu-dash-to-bash

安装Device Tool工具

将devicetool-linux-tool-3.0.0.401.zip压缩包拷贝到Ubuntu(或者在Ubuntu中通过网页下载)

进入DevEco Device Tool软件包所在目录,执行如下命令解压软件包,其中devicetool-linux-tool-3.0.0.401.zip为软件包名称,请根据实际进行修改。

unzip devicetool-linux-tool-3.0.0.401.zip

执行如下命令,赋予安装文件可执行权限,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。

chmod u+x devicetool-linux-tool-3.0.0.401.sh

执行如下命令,安装DevEco Device Tool,根据提示输入临时获取sudo权限的密码,其中devicetool-linux-tool-3.0.0.401.sh请根据实际进行修改。

sudo ./devicetool-linux-tool-3.0.0.401.sh

安装成功如下图所示

ubuntu-install-finish

安装并启动SSH服务
sudo apt-get update
sudo apt-get install openssh-client=1:8.2p1-4
sudo apt-get install openssh-server
sudo systemctl start ssh

Windows环境准备

安装DevEco Device Tool

解压DevEco Device Tool压缩包,双击安装包程序,点击 “ Next ” 进行安装。

  • 设置DevEco Device Tool的安装路径,点击 “ Next ” 。

​ 如果您已安装DevEco Device Tool 历史版本,则在安装新版本时,会先卸载历史版本。

windows-install-path

  • 根据安装向导提示,勾选要自动安装的软件。

在弹出VSCode installation confirm页面,勾选“Install VScode 1.62.2automatically”,点击Next。

如果检测到Visual Studio Code已安装,且版本为1.62及以上,则会跳过该步骤。

windows-install-vscode

  • 在弹出的Python select page选择“Download from Huawei mirror”,点击 “ Next ” 。

如果系统已安装可兼容的Python版本(Python 3.8~3.9版本),可选择“Use one of compatible on your PC” 。

windows-install-python

  • 在以下界面点击Next,进行软件下载和安装。

windows-install-components

  • 等待安装完成

    继续等待DevEco Device Tool安装向导自动安装DevEco Device Tool插件,直至安装完成,点击 “ Finish ”,关闭DevEco Device Tool安装向导。

windows-install-finish

启动Visual Studio Code,会自动进入DevEco Device Tool工具界面。至此,DevEco Device Tool Windows开发环境安装完成。

开发者也可以通过点击Visual Studio Code左侧的DevEco图标,进入DevEco Device Tool工具界面。

deveco-home

Remote-SSH安装及配置
  • 安装Remote-SSH

请点击Visual Studio Code左侧的按钮,搜索Remote-SSH

extension-search-remoteSSH

点击Install进行安装,安装完成后在Visual Studio Code左侧出现的图标

extension-install-remoteSSH

  • 配置Remote-SSH

在Ubuntu中通过 ifconfig 查询IP地址,通过 whoami 获取用户名

如果输入ifconfig无法识别,开发者可以通过 sudo apt-get install net-tools 安装相应的工具

username-ip

点击Visual Studio Code左侧出现的图标,点击➕,在弹出的SSH连接命令输入框中输入“ssh username@ip_address”,其中ip_address为要连接的远程计算机的IP地址,username为登录远程计算机的帐号(通过步骤1方法可查询)。

ssh-1

在弹出的输入框中,选择SSH configuration文件,选择默认的第一选项即可。

ssh-2

在SSH TARGETS中,找到远程计算机,点击,打开远程计算机。

ssh-3

在弹出的输入框中,选择远程计算机的平台,选择默认的第一项即可。

ssh-4

在弹出的输入框中,确认远程计算机的身份认证,选择默认的第一项即可。

ssh-5

在弹出的输入框中,输入远程计算机的密码,回车确认后开始拉取服务器端的.vscode-server压缩包,自动解压放到固定目录下

ssh-7

安装完成后,点击右下角的"Reload Now",在弹出的输入框中输入远程计算机的密码,即可连接到远程计算机,至此安装完成。

reload-to-remoteSSH

remoteSSH-success

  • SSH公钥配置

完成以上流程,可以保证我们实现Remote开发。但是,在使用过程中,会发现系统要求我们填写密码的频率还是十分高的,那么怎么解决这个问题,只在最开始填写一次即可呢?那就是借助SSH key。

生成SSH key【其中,用户名和IP即我们连接时所填】

ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub username@ip

ssh-config-1

配置SSH key,在配置文件中,新增SSH key文件【其中,account一般是用户名】

IdentityFile C:/Users/account/.ssh/id_rsa

ssh-config-2

ssh-config-3

最后

小编在之前的鸿蒙系统扫盲中,有很多朋友给我留言,有很多小伙伴不知道学习哪些鸿蒙开发技术?不知道需要重点掌握哪些鸿蒙应用开发知识点?而且学习时频繁踩坑,最终浪费大量时间。所以有一份实用的鸿蒙(HarmonyOS NEXT)文档用来跟着学习是非常有必要的。 

为了确保高效学习,建议规划清晰的学习路线,涵盖以下关键阶段:

GitCode - 全球开发者的开源社区,开源代码托管平台  希望这一份鸿蒙学习文档能够给大家带来帮助~


鸿蒙(HarmonyOS NEXT)最新学习路线

该路线图包含基础技能、就业必备技能、多媒体技术、六大电商APP、进阶高级技能、实战就业级设备开发,不仅补充了华为官网未涉及的解决方案

路线图适合人群:

IT开发人员:想要拓展职业边界
零基础小白:鸿蒙爱好者,希望从0到1学习,增加一项技能。
技术提升/进阶跳槽:发展瓶颈期,提升职场竞争力,快速掌握鸿蒙技术

2.视频学习教程+学习PDF文档

HarmonyOS Next 最新全套视频教程

  纯血版鸿蒙全套学习文档(面试、文档、全套视频等)       

​​

总结

参与鸿蒙开发,你要先认清适合你的方向,如果是想从事鸿蒙应用开发方向的话,可以参考本文的学习路径,简单来说就是:为了确保高效学习,建议规划清晰的学习路线

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2108531.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Django+Vue3前后端分离学习(五)(前端登录页面搭建)

1、如果需要使用组合式API,需要安装插件: npm install vite-plugin-vue-setup-extend --save-dev 在vite.config.js里配置: 首先导入: import VueSetupExtend from vite-plugin-vue-setup-extend 添加: 2、创建login.vue 然…

C语言刷题日记(附详解)(4)

一、选填部分 第一题: 下面四个选项中,均是不合法的用户标识符的选项是( ) A. A P_0 do B. float la0 _A C. b-a sizeof int D. b_a temp _123 思路提示:题中所问的是"不合法"的"用户标识符",要记得,C…

4区升3区的“灌水王者”!7个月还未送审被人评为“小牌大耍”?急投学者注意

【SciencePub学术】本期,给大家介绍的是1本计算机类的SCI——《JOURNAL OF SUPERCOMPUTING》。 优点VS缺点 • 期刊投稿难度较小,接受率较高 • 国人投稿友好,且已经稳定检索了28年 • 去年由中科院4区升为3区 • 普遍反映这本期刊审稿周期…

项目总体框架

一.后端(包装servlet) 使用BaseServlet进行请求的初步处理(利用继承进行执行这个) 在BaseServlet中 处理请求的类型找到对象的方法,并使用注解找到参数名,执行参数自动注入。 package com.csdn.controlle…

JAVA数据导出为Excel

目录 一、导入依赖 二、使用的相关类 1、XSSFWorkbook 构造方法 创建表 操作表 保存表 样式和格式 日期处理 密码保护 其他 2、XSSFSheet 获取属性和信息 行操作 列操作 表的属性 合并单元格 保护表 页眉和页脚 注释 其它 3、XSSFRow 获取属性和信息 单…

Redis 常用命令总结

文章目录 目录 文章目录 1 . 前置内容 1.1 基本全局命令 KEYS EXISTS ​编辑 DEL EXPIRE TTL TYPE 1.2 数据结构和内部编码 2. String类型 SET GET MGET MSET SETNX INCR INCRBY DECR DECYBY INCRBYFLOAT 命令小结 内部编码 3 . Hash 哈希类型 HSET …

如何用python远程测试连接redis服务器

前提条件 A:操作机(操作系统不限) B:装有redis的服务器(linux系统) 而且需要配置redis服务器允许外部连接。这个一般是在redis的配置文件里修改相关选项。redis.conf或者6379.conf就是redis的配置文件 b…

备考MS office 二级

word 1、分页符 布局-分隔符-分节符-下一页:第二张可以不同纸张大小、方向等 2、调整宽度:新文字宽度(字符宽度) 中文版式 3、字符间距 4、文本转换为表格 1、把 || 替换为逗号,方便查找 5、首字下沉 插入 - 首字下沉…

ActiveMQ 反序列化漏洞复现(CVE-2015-5254)

一、漏洞前言 Apache ActiveMQ是美国阿帕奇(Apache)软件基金会所研发的一套开源的消息中间件,它支持Java消息服务,集群,Spring Framework等。Apache ActiveMQ 5.13.0之前5.x版本中存在安全漏洞,该漏洞源于程…

一篇python常见的Pandas的数据功能的使用

当我们学习了如何使用 Pandas 进行数据的导入与导出,这为我们后续的数据处理打下了基础.此次我们将重点讨论数据选择与过滤.通过掌握这一部分的知识,你将能够轻松地从复杂的数据集中提取出所需的信息.接下来,我们将通过一些实例来逐步了解这些操作. 数据选择 数据选择主要是针…

二分查找 ,看这一篇就够了

什么是二分查找? 二分查找(Binary Search)是一种高效的查找算法,适用于在有序数组中查找特定元素。其基本思想是通过逐步缩小查找范围,每次将查找区间减半,从而大大提高查找效率。二分查找的时间复杂度为O(…

B样条曲线测试

实验效果: 绿色为A*规划的路径,蓝色为Bspline曲线 介绍 对A* 生成的路径进行B样条(A* 和Bspline都是佬们写好的,我直接拿来用) 样条曲线相关可参考文章:详解样条曲线(上)&#x…

基于LaMA-Factory微调llama3.1-8B

大模型的训练目前主要分为Pre-training和Post-training,受限于资源算力等原因,实际工作中更多用到的是SFT。 对于普通用户来说SFT仍然具备较高的门槛,需要了解一定的理论基础,准备用于微调的数据,由于不同基座模型相应…

xilinx通用RAM或者FIFO设计

1、在 Vivado 中,XPM(Xilinx Parameterized Macros)是 Xilinx 提供的一组预定义的、参数化的硬件描述语言 (HDL) 宏模块,用于简化设计流程和提高设计效率。XPM 模块通常用于实现常见的功能,比如存储器(RAM/…

PWR电源控制(低功耗模式)

1 PWR简介 1 程序后面是空循环,即使不用也会耗电,所以有了低功耗(例如遥控器) 2 也要保留唤醒模式,如串口接收数据中断唤醒,外部中断唤醒,RTC闹钟唤醒,在需要工作是,ST…

docker装大米cms(damicms)各种cms可用相同办法

1.docker pull 拉取镜像文件 docker pull medicean/vulapps:base_lamp 2.使用docker运行 docker run -d -p 8080:80 medicean/vulapps:base_lamp 3将需要搭建的 CMS 项目源码放到 kali 中,这里以 damiCMS 为例 查看容器id docker ps 4进入dmCMS 所在目录&#…

基于Java+SpringBoot+Vue的新闻稿件管理系统

基于JavaSpringBootVue的新闻稿件管理系统 前言 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN[新星计划]导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末附源码下载链接🍅 哈…

利用高德API获取整个城市的公交路线并可视化(四)

副标题:公共汽电车站点覆盖率——以厦门市公交线路为例 书接上回,我们有了公交的线路、站点数据,并同时对数据质量进行了校验,但是不同城市情况不同,需要看当地对公交交通数据的开放程度,部分城市建设的有…

Linux系统运行模式以及链接文件

一.Linux系统运行模式 如上图所示,可以使用runlevel这条命令去查看当前系统的运行模式。 如上图所示,可以使用这条命令使得机器以字符模式启动。 如上图所示,可以使用这条命令使得机器以图像化界面启动。 二.链接文件 链接文件类型&#xff…

Aigtek电压放大器的技术指标是什么

电压放大器是一种电路,用于将低电压信号放大为高电压信号。它在电子、通信、音频和视频等领域广泛应用。下面是电压放大器电路的一些特点。 放大倍数高:电压放大器的主要功能是将输入信号的幅度放大到所需的输出电压。因此,电压放大器的一个重…