![Hello HarmonyOS!:鸿蒙应用开发从入门到精通](https://wfqqreader-1252317822.image.myqcloud.com/cover/437/43738437/b_43738437.jpg)
1.4.4 模拟器运行
本节介绍如何将 HarmonyOS 程序运行到模拟器上。目前,华为为开发者提供了远程模拟器,可以供开发者在线调试运行程序。远程模拟器为华为后台服务器使用虚拟化技术运行的 HarmonyOS。应用在模拟器中运行不需要签名,可直接运行。
在 1.4.1 节中,已经新建好了项目。在DevEco Studio 的菜单栏中选择“Tools”→“Device Manager”选项(如图1-52所示),之后弹出HarmonyOS Device Manager页面,在这里可以选择要启动的模拟器。目前包含两类设备:远程模拟器和远程真机。不论用哪种设备,都需要登录华为账号。
在首次打开HarmonyOS Device Manager时,会提示下载模拟器所需要的资源文件。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_48_1.jpg?sign=1739110445-ulDa5SMVLmIrHJLLlAh09OlnmtEhd3uq-0-4fd4b44f0d2c1ae419076e9534c8c274)
图1-52 “Device Manager”选项
打开HarmonyOS Device Manager,点击“Login”后(如图1-53所示),页面会自动跳转到华为账号登录页面,输入账号和密码,进行登录,会提示是否允许HUAWEI DevEco Studio访问你的账号,点击“允许”按钮,如图1-54所示。之后,DevEco Studio中的HarmonyOS Device Manager会接收到授权,可以开始选择相应的设备模拟器。这里选择远程模拟器,模拟器不需要签名就可以直接运行程序。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_48_2.jpg?sign=1739110445-7FRHSbskAW4ELzPpkJaSnGr1U2t9TwGs-0-66b802131df6573df4137df67d165c3d)
图1-53 HarmonyOS Device Manager页面
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_49_1.jpg?sign=1739110445-RoWndjZZaWGbD4Iitgwkz8paNFwLe4Gb-0-5291f846d3b01647a75647588ec3214f)
图1-54 授权DevEco Studio
1.单设备运行
选择Remote Emulator(远程模拟器)中的P40。点击后面的绿色三角按钮运行模拟器。模拟器运行后,按钮会变为红色矩形按钮,点击该按钮可以停止模拟器,如图1-55所示。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_49_2.jpg?sign=1739110445-vM98bARjXvKLYQb4AtURgH0dIFfOyx74-0-1f309c7555a97927106995daa95df3d5)
图1-55 模拟器选择
在屏幕右侧会出现运行起来的模拟器,如图 1-56 所示。如果没出现,那么点击右侧边栏的“Remote Emulator”选项,如图 1-57 所示。侧边栏有三个选项。最上面的是“Gradle”,它包含了很多 Gradle 命令。中间的选项是“Previewer”,用于预览 UI 页面,在编写页面时,可以实时看到页面的设计效果。最下面的选项是“Remote Emulator”,它是远程模拟器。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_50_1.jpg?sign=1739110445-mRzu6WWu4FGEuhgAIHpGApLZe9Yh3GEn-0-cb43bd66aad61ca2647760fb658558fa)
图1-56 模拟器运行
模拟器的使用有时间限制,每次申请的模拟器可以使用1小时,超出时间后,模拟器会自动关闭,开发者可以再次申请,但再次申请启动的模拟器不会保留上一次模拟器中的数据。
模拟器提供了和真机一样的点击、滑动等手势操作,可以像使用手机一样来使用模拟器。模拟器启动后,下方按钮提供了设置模拟器分辨率、翻转手机、Back键、Home键等功能按钮,如图1-58所示。
在模拟器启动后,可以直接运行刚才创建的HarmonyOS项目到模拟器上。在DevEco Studio页面的右上方位置有与运行程序相关的操作区域,如图1-59所示。最左侧的模块为要运行的模块,新创建的项目中默认生成了Entry模块,目录名称为 entry,所以这里暂时只有这一个模块可选,如果项目中新建了其他module,这里就可以选择运行对应的模块。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_51_1.jpg?sign=1739110445-DMcmnVx5XxWKf15fxaLhQPB6ALeeYJ0z-0-3248acacc718272dd9b2ccd19d68e78f)
图1-57 右侧边栏选项
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_51_2.jpg?sign=1739110445-O5OeCfvEXo2R2TeYGdAKhR5JfKI9Bdnw-0-cbde29856bf1e152e5da4a3316c5d5dd)
图1-58 模拟器控制键
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_51_3.jpg?sign=1739110445-BfzO7j0mmcrfzK1v9pfwUaLy6vZNt5Ww-0-35f2a3bacd4bac07d355754b9d68cc33)
图1-59 与运行程序相关的操作区域
当模拟器启动后,在设备列表位置就会出现名为“HUAWEI ANA-AN00”的设备,如果有多个设备,比如用手机连接了电脑、启动了多设备模拟器,就可以在这里选择不同的设备来运行程序。
运行程序按钮可以将指定的模块运行到指定的设备上。在运行程序按钮右侧的是调试程序按钮,以调试模式启动程序后,可以在代码中打断点来调试程序。代码覆盖率测试按钮与测试相关。另外,当程序运行后,如果你想调试程序,那么不用重新以调试模式启动程序,只需要点击绑定进程调试按钮,绑定调试进程,就可以调试程序了。最右侧的按钮是停止按钮,可以将程序停止。
点击运行程序按钮,或使用默认快捷键 Shift+F10,将应用部署到远程模拟器上,安装完成后,程序会自动打开,如图1-60所示。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_52_1.jpg?sign=1739110445-okjRxuzJ64mgNTRaHNfBEQ0QpaXRyO6u-0-7143fce01d3ba667982961d965799266)
图1-60 模拟器部署应用
我们在创建项目时,选择的运行设备是Phone类型的,所以应用可以运行在手机模拟器上。如果项目运行失败,那么需要检查config.json中的deviceType属性是否与要运行到的模拟器类型相匹配。deviceType字段支持tv、wearable、liteWearable、smartVision、phone、car、tablet、route类型的设备或它们的组合,配置方式如下。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_52_2.jpg?sign=1739110445-xQ7Fa9jXS2LRAvitMKGlGlnpza1OqfoD-0-78866c427d755df3bd9d22a7ed4a20ac)
2.多设备运行
HarmonyOS天生具备分布式能力,在模拟器中,也提供了多设备模拟器,可以同时启动两个设备。这两个设备在华为后台已经完成了组网,所以开发者不用关心设备组网情况,如果需要调试应用的分布式能力,只要正常调用相关API即可。下面来看在分布式设备上如何运行程序。
打开HarmonyOS Device Manager,在左侧设备列表中选择“Super device”选项,当前提供了两种设备组合,一种是两部P40手机的组合,另一种是P40手机和MatePad Pro平板电脑的组合,如图1-61所示。开发者可以根据自己的需要,在两者之间进行选择。这里选择两部P40手机的组合。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_53_1.jpg?sign=1739110445-qWonemHIFUAjlHAM5SsFjc0NdVngnGaJ-0-5f86fda7a8c7b407fa54784be2c775c6)
图1-61 Super device
模拟器启动后,DevEco Studio页面的右侧出现了两部 P40手机。这两部是模拟器,而不是真机,如图 1-62 所示。我们可以直接将程序运行到这两部手机上。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_53_2.jpg?sign=1739110445-u71w1zV1D2FqdqRGZiPQvGZS8t7AK5Vb-0-27aba311c7bb3d2f65f577b02a764376)
图1-62 多设备模拟器
模拟器启动后,在设备列表里,正在运行的设备有两部手机。这两部手机的区别在于后面的端口号,一部手机的端口号为8888,另一部手机的端口号为8889。我们可以按照端口号对两部手机进行区分,如图1-63所示。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_54_1.jpg?sign=1739110445-ybBXl4G9YCCn4w6CsTGZcbc8rGZVJuAm-0-fb79eb5938f159aba0feff61a974fe18)
图1-63 设备列表
我们还可以在模块选择下拉菜单中选择“Super App”选项(如图1-64所示),这时设备选择的菜单隐藏了,这里可以直接运行程序。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_54_2.jpg?sign=1739110445-1cfvqebla9awpKWjmfK7TgvS5jnpyYtS-0-18552094639c9cc450c651d626ff3759)
图1-64 Super App
点击程序运行按钮后,会出现如图1-65所示的提示菜单,第一列“Module”为项目中的模块,第二列“Device ID”是当前可以使用的设备,第三列“Device Type”是设备类型,此处的phone表示手机。我们可以在这里完成对模块和运行模块的设备的配置。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_54_3.jpg?sign=1739110445-DpumbL8ADrxHlCDMGVAeUJfdFV8nKlCP-0-3ceee0e14eeb24efdb6a94659ee250fd)
图1-65 提示菜单
程序运行到模拟器后的效果如图1-66所示。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_55_1.jpg?sign=1739110445-sRG4JDDEz3dn4fY6JbEInWsCTVIRr990-0-804afe01a962fd9bb42018f08afe6fb0)
图1-66 多设备模拟器程序运行
3.Previewer
如果只是对布局页面进行调试,则不必将程序运行,可以点击 DevEco Studio 右侧菜单栏中的“Previewer”选项,如图 1-67 所示,可以直接渲染resources\base\layout目录下的布局文件,右侧会出现布局页面的预览页面。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_55_2.jpg?sign=1739110445-O85N16p7mwQPYSDOj7lex6qIWlsmtExE-0-427842002187e012fe94f0e26b96684e)
图1-67 用“Previewer”选项查看布局页面
开发者在编写页面时,在 XML文件中修改、增加或减少页面的组件,预览页面都可以实时响应布局页面代码的变化。在 Previewer 窗口中,还有横竖屏切换、颜色模式切换、语言选择等功能,方便调试页面的显示效果,如图1-68所示。
![](https://epubservercos.yuewen.com/0FFABF/23020655009774306/epubprivate/OEBPS/Images/42868_56_1.jpg?sign=1739110445-vysKVd95504AlPLCRdhrkSoJgWahROC7-0-b25859facd85f3e731325bb824814ac5)
图1-68 Previewer窗口