本文记录 DevEco Studio 安装完成后的首次使用过程:创建工程、处理同步失败、运行 Previewer、检查点击交互、切换横屏,最后构建 HAP。文中时间与环境信息均来自实际操作截图和日志;
刚装好开发工具时,看到 IDE 能打开并不等于环境已经可用。真正容易暴露问题的是下一步:新建一个工程,让依赖同步跑完,再让页面在 Previewer 里动起来,最后产出 HAP。
安装完成后,我新建了一个名为 AdaptiveTasks 的空工程,准备把最基本的开发链路跑通。过程并不算一次通过------第一次同步明确失败,编辑器和调试器一度处于可能失效的状态。重新检查并重试后,工程才走到可预览、可交互、可构建。这个小插曲也提醒我:能打开 IDE,只能算安装完成了一半。
一、使用环境与要完成的任务
本次环境如下:
| 项目 | 实际信息 |
|---|---|
| 操作系统 | Windows 10 |
| CPU | 13th Gen Intel Core i5-13500H,12 核 16 逻辑处理器 |
| 内存 | 15.7 GB 可用容量 |
| IDE | DevEco Studio 6.1 系列,build DS-243.24978.46.36.611300 |
| IDE 自带运行时 | JRE/JVM 21.0.8,64 位 OpenJDK Server VM |
| 工程模板 | Empty Ability |
| Compatible SDK | 6.1.1(24) |
| 目标设备 | Phone、Tablet、2in1 |
| 运行方式 | DevEco Studio Previewer,本地构建 |
创建工程前,我先看了一眼任务管理器。当时 CPU 利用率约 4%,内存为 8.2/15.7 GB(52%)。

接下来要完成的事情很明确:让工程同步成功;让 ArkTS 页面在 Previewer 中显示;点击后页面状态能够刷新;横竖屏切换不出问题;assembleHap 最终以退出码 0 结束。这几步走通,后续才能在这个工程上继续写功能。
二、创建工程:先把版本和设备范围定下来
新建项目时选择 Empty Ability,工程名为 AdaptiveTasks,包名使用 com.example.adaptivetasks。工程保存在 D:\HarmonyProject\AdaptiveTasks,Compatible SDK 选择 6.1.1(24),同时勾选 Phone、Tablet 和 2in1。

这里有两个当时容易随手略过、后来却会影响复现的地方。
第一,Compatible SDK 是工程兼容边界的一部分,不等于"IDE 版本"。写文章或反馈问题时,只说"我用的是 DevEco Studio 6.1.1"还不够,至少还应带上 Compatible SDK/API 信息。第二,多设备选项决定模板生成的目标范围。
三、第一次同步没有成功
工程创建后,IDE 已经生成了 AppScope、entry、hvigor、oh_modules 等目录,entry/src/main/ets/pages/Index.ets 也能打开。但编辑器顶部出现了"工程同步失败,一些基础功能(如编辑器、调试器)可能失效"的提示。

这时页面源码看上去是完整的,甚至语法高亮也在,并不能据此判断工程已经就绪。同步失败通常意味着依赖或构建模型没有准备完整,继续写业务代码只会把环境问题和代码问题混在一起。
我没有删除工程重建,而是先保留现场,确认工程路径与网络仍可用,再执行界面上的"重试"。这一步很重要:如果直接重建成功,只能说明第二个工程能用,却无法判断第一次失败是不是偶发的依赖获取或初始化问题。
重试后的构建窗口显示两段关键结果:
Ohpm Install成功;Build Init成功,进程退出代码为 0。
其中 Hvigor daemon 首次启动用了 15 秒;IDE 底部记录本轮同步项目总耗时为 1 分 48 秒 450 毫秒。

同步期间我又看了一次任务管理器:截图时 CPU 为 31%,内存为 10.1/15.7 GB(64%)。相比创建工程前,系统当下负载确实提高了,但这仍只是两个时间点的快照,并不能证明增加的约 1.9 GB 全由 DevEco Studio 单独占用。

四、用一个可点击页面检查"不是只显示出来"
模板页本身已经够用,但我保留了一个最小交互:初始显示 Hello World,点击文字后将状态改为 Welcome。对应的 Index.ets 核心代码如下:
arkts
@Entry
@Component
struct Index {
@State message: string = 'Hello World'
build() {
RelativeContainer() {
Text(this.message)
.id('HelloWorld')
.fontSize($r('app.float.page_text_font_size'))
.fontWeight(FontWeight.Bold)
.alignRules({
center: { anchor: '__container__', align: VerticalAlign.Center },
middle: { anchor: '__container__', align: HorizontalAlign.Center }
})
.onClick(() => {
this.message = 'Welcome'
})
}
.height('100%')
.width('100%')
}
}
这段代码很短,却同时检查了页面编译、资源引用、状态更新和点击事件。只截一张静态的 Hello World,最多能证明 Previewer 显示了页面;点击后文字变化,才能进一步证明交互链路和 @State 刷新正常。
第一次启动 Previewer 时,Phone (medium) 中成功显示 Hello World。构建输出显示,PreviewArkTS 阶段耗时 1 分 3 秒 630 毫秒,整次 PreviewBuild 为 1 分 7 秒 622 毫秒 ,最终提示 BUILD SUCCESSFUL,退出代码为 0。

点击中间文字后,页面变为 Welcome。这一步没有重新改代码,也不是换了一张静态页面,而是 onClick 修改 message 后触发了界面刷新。

随后将预览设备切换到横屏,文字仍保持 Welcome,并继续位于容器中央。这个空白页面还谈不上真正的响应式设计,不过百分比容器和相对居中规则在方向变化后仍然正常。
五、预览成功还不够,再构建一次 HAP
Previewer 的成功不能替代工程构建。最后我执行 assembleHap,输出中能看到资源处理、ArkTS 编译、打包检查和 PackageHap 等任务。最终结果为:
text
BUILD SUCCESSFUL in 21 s 895 ms
进程已结束,退出代码为 0

这次输出里还有一条不能忽略的黄色警告:当前工程没有配置 signingConfigs,因此跳过 hos_hap 签名。它不影响本次本地构建以退出码 0 完成,但也说明"构建成功"不等于"已经获得可直接分发或上架的签名包"。如果下一步要安装到真实设备或进入发布流程,签名配置仍需单独处理。
六、回头查 idea.log,版本信息比"关于"页更完整
为了避免只凭界面标题判断版本,我又打开了 idea.log。启动段明确记录了:
text
IDE: DevEco Studio (build #DS-243.24978.46.36.611300)
OS: Windows (11.0)
JRE: 21.0.8+1-b1038.71, amd64
JVM: 21.0.8+1-b1038.71 (OpenJDK 64-Bit Server VM)

七、首次启动之后,开发链路已经跑通
回看整个过程,值得记下的并不只是最终那张 Welcome,还有中间那次同步失败。它把"IDE 能启动"和"工程能继续开发"之间的差别暴露了出来。经过重试,Ohpm 安装、Build Init、PreviewBuild 和 assembleHap 都拿到了成功结果,最小点击交互也真实生效,这套 Windows 开发环境已经可以继续使用。
到这里,这次安装后的首个任务已经完成:**DevEco Studio 能够创建 Compatible SDK 6.1.1(24) 的 ArkTS 工程,Previewer 交互与横屏显示正常,HAP 本地构建成功;签名配置尚未处理。