鸿蒙应用调测助手,想不到吧,鸿蒙上可以开发小游戏了!

2023-11-10 07:10

本文主要是介绍鸿蒙应用调测助手,想不到吧,鸿蒙上可以开发小游戏了!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

11 月 4 日,首批 HarmonyOS 系统课程开发者张荣超老师为大家带来了一场主题为《从零开发鸿蒙小游戏APP》的精彩公开课,课上很多网友提出了自己关心的问题,下面我们就来和大家分享其中的精华部分:

afbcf671613f0a4576dbeab25548fc32.png

01

如何将开发的 Lite Wearable 项目部署在鸿蒙手表 Watch GT2 Pro 真机上?

步骤(1)生成秘钥和证书请求文件

链接:https://developer.harmonyos.com/cn/docs/documentation/doc-guides/create_csr-0000001053702411

步骤(2)在手机中安装 App:应用调测助手,通过该 App 获得鸿蒙手表的 udid,点击主界面中的复制按钮,可以复制手表的 udid。

步骤(3)给项目起一个包名(Package name)

起的包名是任意的,例如:com.test.lwdemo。以后每次创建 Lite Wearable 项目时,都要使用该包名。

步骤(4)发邮件给 agconnect@huawei.com

邮件中要包含4样东西:步骤(1)中的两个文件,步骤(2)中的 udid,步骤(3)中的包名。

步骤(5)官方回复邮件

回复的邮件中包含两个文件:.p7b 文件

.cer 文件

步骤(6)在 DevEco Studio 中创建一个 Lite Wearable 的项目

创建项目时的 Package Name,请使用步骤(3)中的包名。

步骤(7)在 DevEco Studio 中进行配置

在菜单栏中选择 File,然后点击 Project Structure,在弹出窗口中做如下配置:

步骤(8)在 DevEco Studio 中构建签名的 hap 包

在菜单栏中选择 Build,在弹出的菜单中点击 Build App(s)/Hap(s),然后点击 Build Debug Hap(s)。

生成的签名 hap 包所在的路径为:\build\outputs\hap\debug\liteWearable。

步骤(9)将签名的 hap 包拷贝到手机的指定位置

在手机的 sd 卡根目录中新建一个名为haps的目录,将步骤(8)中的 hap 包拷贝到 haps 目录中。

步骤(10)将手机中的 hap 包通过 App 应用调测助手安装到手表中

打开步骤(2)中安装的 App 应用调测助手,在主界面中点击按钮“应用管理”,在新打开的页面中就可以看到手机中的 hap 包了。

点击 hap 包后面的按钮“安装”,就可以将 hap 包安装到手表中了。安装完成后,应用调测助手中会跳出提示“安装完成”。

02

在 Lite Wearable 上开发的项目,如何做到“一次开发,多端部署”(直接部署在 Wearable 和 TV 这两个平台上)

要点(1)Lite Wearable 属于轻鸿蒙,Wearable 和 TV 属于富鸿蒙

轻鸿蒙和富鸿蒙在项目配置上目前是不统一的,比如富鸿蒙目前需要有 Java 的 shell,而轻鸿蒙是没有的,所以在 DevEco Studio 中轻鸿蒙和富鸿蒙的项目是不能通用的,还不能做到同一个项目支撑两套开发。

但是,在 Lite Wearable 平台上编写的 JS 代码文件是可以直接复用到 Wearable 或 TV 的项目里面的。

要点(2)通过指定 deviceType,可以让同一个项目在多个轻鸿蒙设备或多个富鸿蒙设备上通用

例如:Wearable 和 TV 都属于富鸿蒙。新建一个 Wearable 的项目,在项目的文件 config.json 中,deviceType 的值默认是 ["wearable"]。

如果将 deviceType 的取值修改为 ["wearable", "tv"],那么这个 Wearable 的项目就可以直接运行在 TV 平台上。

03

就目前而言,相对于 Wearable 和 TV 这两个平台,为什么说在 Lite Wearable 这个平台上相关的开发工具是最全面、最稳定的,并且给开发者的体验是最好的?

要点(1)鸿蒙手表 Watch GT2 Pro 已经上市

既然都已经上市了,所以相关的开发工具是最全面、最稳定的!

要点(2)Lite Wearable 既有本地的预览器,又有本地的模拟器

如果选择 Wearable 和 TV 这两个平台进行 App 的开发,目前华为还没有开放基于 X86 的本地模拟器,因此,需要将编写的代码发送到远程的 ARM 处理器以运行代码,在本机上只能预览运行结果,而无法在本机上运行和调试代码。

因此,就目前而言,Wearable 和 TV 这两个平台,给开发者的体验是相对不太好的。

但是,如果我们选择 Lite Wearable 这个平台,那就不一样了,既可以使用本机的预览器 Previewer 来预览代码的运行效果,也可以使用本机的模拟器 simulator 来运行和调试代码,因此,就目前而言,Lite Wearable 这个平台给开发者的体验是最棒的!

04

开发 Lite Wearable 的 App,可以使用的编程语言有哪些?支持 Python、C# 或 C++ 吗?

要点(1)作为第三方开发者,开发 Lite Wearable 的 App,只能使用编程语言 JavaScript。

开发 Wearable 的 App,可以使用的编程语言有:JavaScript、Java。

开发 TV 的 App,可以使用的编程语言有:JavaScript、Java。

开发手机的 App,可以使用的编程语言有:JavaScript、Java。

短期内,对于第三方开发者,不会支持其它编程语言,包括:Python、C#、C++、等等。

要点(2)对于鸿蒙手表 Watch GT2 Pro 中预装的 App,华为内部的工程师在开发时还可以使用编程语言 C++。

C++ 只供华为内部的工程师使用,目前没有对第三方开发者开发,以后是否会开放,还要看鸿蒙团队的考量。

05

老师在直播中有提到:鸿蒙对 HTML、CSS 和 JavaScript 做了很多裁剪和优化,具体做了哪些裁剪和优化呢?

目前官方还没有发布一个完整详细的 list,来说明具体做了哪些裁剪和优化。

如果有 Web 前端开发的经验,可以阅读开源框架 ace_lite_jsfwk 的源代码,这是一个轻量级的 JS 核心开发框架,地址为:https://gitee.com/openharmony/ace_lite_jsfwk

06

在 JS 代码中调用文件存储或数据存储相关的 API 时,只能"写"数据,而无法"读"数据,请问如何操作才能读到数据呢?

这是预览器 Previewer 和模拟器 simulator 的一个 bug,我已经将这个 bug 反馈给官方,官方会在本月中旬发布一个新版本以修复该 bug。

07

当把编译之后的签名 hap 包安装到鸿蒙手表 Watch GT2 Pro 之后,在预览器或模拟器看到的页面显示效果,与在真机看到的显示效果并不是完全一致的,请问如何解决才能让两者有一致的显示效果?

这是预览器 Previewer 和模拟器 simulator 的一个 bug,我已经将这个 bug 反馈给官方,官方会在本月中旬发布一个新版本以修复该 bug。

08

老师共享的 2048 游戏代码中,对于 index.hml 中的组件 canvas,在 canvas 的下方显示了一个红色的波浪线,把鼠标放上去,提示说:是一个未知的组件,这是什么原因呢?

目前,官方还没有正式 release 组件 canvas,因此在其下方会显示一个红色的波浪线,但是,并不影响代码的运行。

之前共享给大家的 2048 游戏代码,仍然是可以正常运行在预览器或模拟器中的。

因为组件 canvas 还没有正式 release,所以,之前共享给大家的2048游戏代码,无法正常运行在鸿蒙手表 Watch GT2 Pro 中。

为此,这里再为大家提供一份 2048 的游戏代码(可以到附件中下载)。

该代码没有使用组件 canvas,而是采取另外一种实现思路:当滑动时,去更换 16 个格子的背景色、数字以及数字的颜色。因为该份代码中大量使用了动态绑定,所以导致手表的内存占用较大,近乎接近临界值,因此,最好是能对该份代码再做一些优化。

这篇关于鸿蒙应用调测助手,想不到吧,鸿蒙上可以开发小游戏了!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/381127

相关文章

Java中的Lambda表达式及其应用小结

《Java中的Lambda表达式及其应用小结》Java中的Lambda表达式是一项极具创新性的特性,它使得Java代码更加简洁和高效,尤其是在集合操作和并行处理方面,:本文主要介绍Java中的La... 目录前言1. 什么是Lambda表达式?2. Lambda表达式的基本语法例子1:最简单的Lambda表

Python结合PyWebView库打造跨平台桌面应用

《Python结合PyWebView库打造跨平台桌面应用》随着Web技术的发展,将HTML/CSS/JavaScript与Python结合构建桌面应用成为可能,本文将系统讲解如何使用PyWebView... 目录一、技术原理与优势分析1.1 架构原理1.2 核心优势二、开发环境搭建2.1 安装依赖2.2 验

Java字符串操作技巧之语法、示例与应用场景分析

《Java字符串操作技巧之语法、示例与应用场景分析》在Java算法题和日常开发中,字符串处理是必备的核心技能,本文全面梳理Java中字符串的常用操作语法,结合代码示例、应用场景和避坑指南,可快速掌握字... 目录引言1. 基础操作1.1 创建字符串1.2 获取长度1.3 访问字符2. 字符串处理2.1 子字

使用Python开发一个带EPUB转换功能的Markdown编辑器

《使用Python开发一个带EPUB转换功能的Markdown编辑器》Markdown因其简单易用和强大的格式支持,成为了写作者、开发者及内容创作者的首选格式,本文将通过Python开发一个Markd... 目录应用概览代码结构与核心组件1. 初始化与布局 (__init__)2. 工具栏 (setup_t

SpringShell命令行之交互式Shell应用开发方式

《SpringShell命令行之交互式Shell应用开发方式》本文将深入探讨SpringShell的核心特性、实现方式及应用场景,帮助开发者掌握这一强大工具,具有很好的参考价值,希望对大家有所帮助,如... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定

SpringBoot应用中出现的Full GC问题的场景与解决

《SpringBoot应用中出现的FullGC问题的场景与解决》这篇文章主要为大家详细介绍了SpringBoot应用中出现的FullGC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录Full GC的原理与触发条件原理触发条件对Spring Boot应用的影响示例代码优化建议结论F

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

鸿蒙中@State的原理使用详解(HarmonyOS 5)

《鸿蒙中@State的原理使用详解(HarmonyOS5)》@State是HarmonyOSArkTS框架中用于管理组件状态的核心装饰器,其核心作用是实现数据驱动UI的响应式编程模式,本文给大家介绍... 目录一、@State在鸿蒙中是做什么的?二、@Spythontate的基本原理1. 依赖关系的收集2.