0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

DevEco Device Tool为开发者主要提供了八大特性

OpenAtom OpenHarmony 来源:OpenAtom OpenHarmony 作者:OpenAtom OpenHarmony 2022-06-14 11:48 次阅读

DevEco Device Tool 为设备开发者提供一站式的开发环境和资源获取通道,实现了从芯片模板工程创建、到开发资源挑选定制,再到快速编码、轻小型系统调试调优、烧录环节的全流程覆盖,帮助开发者实现 OpenAtom OpenHarmony(以下简称“OpenHarmony”)智能硬件设备的高效开发。自2020 年 9 月发布了第一个版本 V1.0.0,到 2022 年 3 月底发布了 V3.0 Release 版本,历经 10 次迭代升级,DevEco Device Tool 为开发者主要提供了以下八大特性。

一、一体化安装导航

设备开发过程中依赖的软件比较多,而且不同的软件还存在多种版本,这在一定程度上加大了搭建开发环境的难度,导致部分开发者由于环境安装遇到的问题被劝退。

DevEco Device Tool 为开发者提供一体化安装导航功能,自动对依赖的软件进行检测,并针对缺失的软件提供推荐的软件版本。开发者只根据提示进行勾选,即可自动下载和安装软件,提高用户的安装体验和便利性。

比如,图 1 表示安装器检测到 Python 环境缺失,开发者可通过勾选完成 Python 的自动下载安装。

c7c4c470-eb19-11ec-ba43-dac502259ad0.png

图1 安装提示

二、支持多种类型的开发板和芯片

DevEco Device Tool 目前支持基于华为海思芯片的 Hi3516DV300、Hi3518EV300、Hi3861V100、BearPi-HM Nano 开发板,以及基于三方厂商芯片的 Imx6ull、Rtl8720、Xr872、Neptune 等,总计 24 款开发板。未来,DevEco Device Tool 还将增加对更多开发板的全面支持。

如图 2 所示,在 DevEco Device Tool 工具界面,选择“QUICK ACCESS > 主界面 > 开发板”,即可查看 DevEco Device Tool 目前支持的所有开发板和芯片。

c81af4d0-eb19-11ec-ba43-dac502259ad0.png

图2 当前支持的开发板

三、集成设备开发样例

为帮助提升开发效率,DevEco Device Tool 集成了 OpenHarmony 社区的设备开发样例,让开发者无需从零开始敲代码,可快速上手。开发者在创建工程时根据需要选择开发样例,即可一键快速拉取源码。

具体使用方法:

1.在 DevEco Device Tool 工具界面,选择“QUICK ACCESS > DevEco Home > Home”,然后点击 Create Project 进入创建工程的向导界面。

2.输入工程名称,在 Bundle 下拉栏中选择需要的设备开发样例。Device Tool 会根据所选的开发样例自动填写 MCU 和开发板信息

3.点击 Finish,DevEco Device Tool 自动拉取开发样例完成工程创建。

c826e83a-eb19-11ec-ba43-dac502259ad0.gif

图3 选择开发样例

目前已集成了 47 个不同产品的样例,后续会有越来越多的样例逐渐上架,形成标准的资源中心。开发者也可以将自己的样例上传到 OpenHarmony 社区参与样例共建哦!

样例共建链接:

https://gitee.com/openharmony-sig/knowledge/blob/master/docs/co-construct_demos/README_zh.md

四、多人共享的远程开发模式

在开发过程中,开发者可能都遇到过开发环境不够用、与同事争抢同一套开发环境的窘迫场景。DevEco Device Tool 提供多人共享开发的功能,支持一个团队共用一台服务器。只需搭建一台公共的 Linux 服务器,团队成员即可从自己的 Windows 机器远程登录 Linux 服务器,进行共享开发。既节省了时间,也降低了成本。

具体使用方法:

点击 VSCode 左侧的c86e0df0-eb19-11ec-ba43-dac502259ad0.jpg图标,进入远程资源管理器界面,添加远程服务器(即 Linux 服务器)。添加成功后,管理员登录远程服务器通过 sudo 命令进行初始配置后,团队成员即可通过 Remote SSH 登录远程服务器,进行共享开发了。

c87f5f38-eb19-11ec-ba43-dac502259ad0.gif

图4 多人共享开发

五、自动检测和补全编译工具链

在日常开发中,你是否遇到过因工具缺失导致编译失败?然后到处查找工具,找到后又要学习怎么安装,安装后还需要配置工具链,操作繁琐,费时费力。

DevEco Device Tool 贴心地为开发者集成了丰富多样的编译工具链。导入工程时,DevEco Device Tool 自动检测工程所依赖的工具是否完备。如果存在工具缺失,可一键下载和安装所有缺失的工具,且自动完成工具链配置,大幅度减少编译复杂度,提高工作效率。

具体使用方法:

1.导入工程后,在 DevEco Device Tool 工具界面,选择“QUICK ACCESS > DevEco Home > Projects”,然后点击 “Settings”进入工程配置界面。

2.在工程配置界面,点击“toolchain”页签下的“Details”,详细查看缺失了哪些工具。

3.在工程配置界面,点击“toolchain”页签下的“Setup”,一键下载和安装所有缺失的工具。

c8db9820-eb19-11ec-ba43-dac502259ad0.gif

图5 自动检测和补全编译工具链

六、源码级调试能力

在开发过程中,调试能力尤为重要,一个好用的调试功能能够帮助开发者事半功倍地完成开发任务。

DevEco Device Tool 提供自研调试插件,为开发者提供源码级调试能力。调试界面如下图所示:

c911330e-eb19-11ec-ba43-dac502259ad0.png

图6 调试界面

提供的源码级调试能力包括:

●支持 Launch 和 Attach 两种方式启动调试。

●支持的调试操作有:单步调试、方法进入、方法退出、Continue、Restart(复位调试)、Reset device(复位设备)、停止调试。

●支持设置断点,包括源码断点、数据断点、函数断点和汇编源码断点。

●支持查看和修改局部变量(Local)、全局变量(Global)、静态变量(Static)和通用寄存器(Registers),还支持将关心的变量添加到“监视”任务栏,随时查看变量值变化。

●支持在调试过程中同时查看当前执行的源代码和对应的汇编代码,且支持对汇编代码设置断点和单步调试。

●支持调试过程中查看调用栈。

●支持根据地址查看内存。

七、性能分析能力

在轻量设备开发过程中,时常会面临 CPU 紧张、内存不足、内存溢出等问题,因此开发者在开发过程中需要时刻关注 CPU 和内存等的使用情况。

为帮助开发者提升性能,DevEco Device Tool 提供以下性能分析能力:

1. Profiling可视化分析

DevEco Device Tool 提供 Profiling 可视化分析功能,通过可视化的界面展示开发板上运行的应用所占系统资源和内存资源的信息,帮助开发者查看和分析开发板上各任务堆内存和栈内存的使用情况。

可查看的可视化数据曲线包括 Heap(堆内存)、Stack(栈内存)、OS Objects(系统资源)和 All in one(实时的内存占用情况)的使用情况。

● Heap:实时统计应用堆内存当前的使用情况和历史峰值情况。

● Stack:统计应用内各任务的内存使用情况,可以通过任务内存的峰值比例(Peak%)查看具体任务的内存使用情况,以便更合理的分配每个任务的内存大小。

c97396ac-eb19-11ec-ba43-dac502259ad0.png

图7 Stack(栈内存)

● OS Objects:统计系统资源的使用情况,如定时器(timers)、任务(tasks)、队列(queues)等数量。

c97fcecc-eb19-11ec-ba43-dac502259ad0.png

图8 OS Objects(系统资源)

● All in one:统计 Heap 和 Stack 的使用情况,实时动态刷新。

c9cb861e-eb19-11ec-ba43-dac502259ad0.gif

图9 All in one

2. 栈分析和镜像分析

DevEco Device Tool 通过集成栈分析工具(Stack Analysis)和镜像分析工具(Image Analysis),用于开发过程中的内存不足、内存溢出等问题进行分析,帮助开发者更加精准的分析、定位问题。

栈分析工具是基于静态二进制分析手段,提供任务栈开销估算值和函数调用关系图示,为栈内存使用、分析、优化、问题定位等开发场景提供较为准确的静态内存分析数据参考。镜像分析工具对工程构建出的elf文件进行内存占用分析,支持开发者快速评估内存段、符号表使用情况。

ca1cf896-eb19-11ec-ba43-dac502259ad0.gif

图10 栈分析和镜像分析

(目前 DevEco Device Tool 只支持只支持 Hi3861V100 开发板的栈分析和镜像分析功能。)

3. Trace分析

DevEco Device Tool 提供 Trace 分析功能,可以实时跟踪应用在开发板上运行时的 CPU 的用率、内存占用、运行的任务或事件。开发者可以在任意时刻开始或停止记录 Trace,并以图形化形式展示事件、内存、CPU、运行轨迹等信息。开发者可以根据采集的跟踪数据查看导致内存或 CPU 异常的事件或进程,从而进行源代码的优化。

ca30e3d8-eb19-11ec-ba43-dac502259ad0.gif

图11 Trace分析

(目前DevEco Device Tool只支持Hi3516DV300和Hi3518EV300的Trace分析功能。)

4. Perf分析

DevEco Device Tool 提供 Perf 分析功能,可以通过对开发板源码进行事件采样,获取 CPU 硬件事件、高精度周期事件、OS 软件事件,生成 Perf 文件。Perf 分析器对输出的 perf 文件进行热点函数和热点路径分析。基于 Perf 分析,可以进行算法优化、代码优化,以提高执行速度、减少内存占用。

ca985a7c-eb19-11ec-ba43-dac502259ad0.png

图12 Perf分析

(目前DevEco Device Tool只支持Hi3516DV300和Hi3518EV300的Perf分析功能。)

八、应用兼容性测试

为了保证合作伙伴的设备和应用在 OpenHarmony 上能稳定地运行,同时提供一致性的接口和业务体验,合作伙伴的设备和应用在正式发布之前,需要进行一系列兼容性测试。

DevEco Device Tool提供基于 Hi3516DV300 开发板的应用兼容性测试功能。开发者可以在 Linux 系统上一站式完成开发和应用兼容性测试,无需将编译生成文件拷贝到 Windows 工作台,即可通过命令行进行测试。

具体使用方法:点击 Acts Test 进入配置页,在配置一系列参数后保存后,通过 PROJECT TASKS 中的 Test 按钮,执行对应的模块按钮后,会自动进行应用兼容性测试并将测试结果显示到浏览器中。

caa70b62-eb19-11ec-ba43-dac502259ad0.gif

图13 应用兼容性测试

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发板
    +关注

    关注

    25

    文章

    4426

    浏览量

    93942
  • python
    +关注

    关注

    51

    文章

    4674

    浏览量

    83464
  • 开发者
    +关注

    关注

    1

    文章

    499

    浏览量

    16389

原文标题:DevEco Device Tool 助力OpenHarmony设备开发

文章出处:【微信号:gh_e4f28cfa3159,微信公众号:OpenAtom OpenHarmony】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    HarmonyOS开发学习:【DevEco Device Tool 安装配置(问题全解)】

    介绍如何在Windows主机上安装DevEco Device Tool工具。
    的头像 发表于 04-14 11:30 326次阅读
    HarmonyOS<b class='flag-5'>开发</b>学习:【<b class='flag-5'>DevEco</b> <b class='flag-5'>Device</b> <b class='flag-5'>Tool</b> 安装配置(问题全解)】

    鸿蒙DevEco Service开发准备与使用

    。 业务介绍 DevEco Service是HarmonyOS开发者云端服务中心,汇聚了丰富的资源和服务;支持在线体验多种开发场景,共建共享开发资源;并
    发表于 02-23 15:40

    软件测试的八大特性有哪些?

    软件测试是软件开发过程中重要的一环,其目的是发现软件中存在的问题,并提供解决方案。因此,软件测试的八大特性对于保证软件的质量和稳定性至关重要。 1、功能性是指软件是否按照需求文档和设计
    发表于 01-02 10:15

    欢迎加入飞腾派开发者社区,感谢每一位开发者

    板紧密地结合在一起,开发者提供一个展示和分享自己才华的平台。 基于此次合作,飞腾(广州)技术有限公司给华秋 · 电子发烧友发来了感谢信,这是对此次合作的充分肯定! 来自飞腾派项
    发表于 12-11 16:11

    鸿蒙原生应用/元服务开发-开发者如何进行真机测试

    前提条件:已经完成鸿蒙原生应用/元服务开发,已经能相对熟练使用DevEco Studio,开发者自己有鸿蒙4.0及以上的真机设备。 真机测试具体流程如下 1.手机打开开发者模式 2.在
    发表于 11-30 09:46

    【鸿蒙生态千帆起】HarmonyOS系统级地图与位置服务,赋能广大开发者

    HarmonyOS下地图领域的最新技术探索与实践成果。 得益于HarmonyOS一次开发多端部署、可分可合自由流转、统一生态原生智能的特性,Petal Maps开发者
    发表于 11-22 10:37

    鸿蒙原生应用开发-DevEco Studio远程模拟器的使用

    重新申请资源。具体步骤如下: 1.需要登录华为开发者联盟账户 2.登录过程 查看和使用模拟器资源 在Single Device中,单击设备运行按钮,启动远程模拟设备(同一时间只能启动一个设备)。 单击
    发表于 11-10 17:01

    鸿蒙原生应用开发-DevEco Studio远程真机的使用

    能很方便的调试和验证HarmonyOS应用,方便开发者DevEco Studio提供Remote
    发表于 11-09 15:55

    鸿蒙原生应用开发-DevEco Studio超级终端模拟器的使用

    ”和“Phone+TV”的设备组网方式,开发者可以使用该超级终端模拟器来调测具备跨设备特性的应用/服务,如应用/服务在不同设备间的流转。 二、具体使用超级终端模拟器运行应用/服务 1.在DevEco
    发表于 11-08 15:09

    DevEco Studio中如何设置HarmonyOS/OpenHarmony应用开发

    DevEco Studio默认为HarmonyOS应用开发,如果需要修改为OpenHarmony应用开发,修改方式如下。 一、总体说明 build-profile.json5当前的模
    发表于 09-14 14:50

    HarmonyOS/OpenHarmony应用开发-ArkTSAPI系统能力SystemCapability

    ,随着目标设备是否支持该系统能力共同存在或消失,也会随着DevEco Studio一起提供开发者做联想。 开发者可以在系统能力SystemCapability列表中查询Harmon
    发表于 08-10 16:39

    【直播预告】HarmonyOS极客松赋能直播第四期:HarmonyOS开发经验分享

    文章推荐 点击下方链接,查看更多技术文章 对应用数据开发还有疑惑?看这篇就够了! DevEco Studio 3.1 Beta新特性知多少 DevEco
    的头像 发表于 07-03 09:05 338次阅读
    【直播预告】HarmonyOS极客松赋能直播第四期:HarmonyOS<b class='flag-5'>开发</b>经验分享

    【直播预告】HarmonyOS极客松赋能直播第三期:一次开发多端部署与ArkTS卡片开发

    文章推荐 点击下方链接,查看更多技术文章 对应用数据开发还有疑惑?看这篇就够了! DevEco Studio 3.1 Beta新特性知多少 DevEco
    的头像 发表于 06-28 09:05 298次阅读
    【直播预告】HarmonyOS极客松赋能直播第三期:一次<b class='flag-5'>开发</b>多端部署与ArkTS卡片<b class='flag-5'>开发</b>

    开放原子开源基金会OpenHarmony开发者大会2023演讲资料汇总

    、交通、教育、政务、家居等众多行业,OpenHarmony生态发展欣欣向荣。 本届OpenHarmony开发者大会将对OpenHarmony 3.2Release新特性、新能力进行深入介绍,同时邀请
    发表于 05-29 16:34

    DevEco Studio 3.1 Release | 动态共享包开发,编译更快,包更小

    ,从而影响了HarmonyOS应用开发效率和开发者体验。 Bundle化打包过程示意图 为了提升开发效率和开发者体验,DevEco Stud
    发表于 05-19 11:25