网传鸿蒙系统下一个版本不再支持安卓?
发表时间:2023-11-23 11:03:17
文章来源:炫佑科技
浏览次数:136
菏泽炫佑科技
网传鸿蒙系统下一个版本不再支持安卓?
我们先来说一下IDE。 IDE支持主流Mac,包括M系列芯片的Mac。 使用M芯片Mac的朋友很高兴看到有专门支持的软件,至少我是,呵呵。 IDE没有复杂的配置,包括安装node.js、Ohpm(鸿蒙系统包管理命令行工具,类似于npm)、SDK和模拟器。 基本上是有指导的可视化操作,直接点击下一步即可。
关于UI框架,提供了一套UI开发框架,称为方舟开发框架(ArkUI )。 该框架为不同技术背景的开发者提供了两种开发范式,即基于ArkTS的声明式开发范式和兼容JS的开发范式。 类似Web 的开发范例。 ArkTS 是该语言的扩展。 幸运的是,它不是一种新语言。 我实在是学不下去了。 我发现它集成了很多前端框架的模型,比如react,,,,还有一些接口来自于css。 你会发现它们并不相似,但又都很相似。 那就好,开发难度降低了,希望*后能够统一。 前端要学的东西太多了,学不来。
关于应用模型网传鸿蒙系统下一个版本不再支持安卓?,随着系统的发展,已经提供了两种应用模型,早期的FA()模型和现在的Stage模型。 前者是API 7支持的模型,不再是主要推荐。 后者从 API 9 开始就支持,目前是长期发展的主要模型,所以我暂时只看后者。 请前往官方网站了解前者的更多信息。 不过我发现,*新的IDE选择Stage模型时,只支持ArkTS语言,所以上面提到的兼容JS的Web开发范式应该也是一个过渡产品,*终会被淘汰。 OK,作为一个刚接触鸿蒙开发的人,主要是学习Stage模型以及基于ArkTS的开发。
好的,让我们创建一个 Hello World。
安装IDE
可以直接从官网下载,官网提供了三个版本。 我还没试过。 您可以直接在 Mac 上安装它。
新项目
**次打开IDE时,将引导您安装Node.js、Ohpm和所需的SDK。 它会自动检测是否已安装。 如果没有,只需选择它,然后执行下一步。
安装完成后,或者下次启动就直接进入这个页面,我们选择crate来创建项目。
我们选择,右边有很多模板,选择Empty,点击Next。
这里是一些通用的项目信息需要填写,特别指出的是,如果Model(应用模型)选择FA,则可以选择JS。 否则,ArkTS 就只有一个选项。 官方推荐的时候Model是Stage,所以只能选择Stage和ArkTS。 有一个选项称为“超级”。 选择后,将生成一个额外的布局文件,可以像 和 iOS 布局文件一样拖放该文件。 如果你有兴趣,可以尝试一下。 我选择默认不选中它。
项目目录
这是项目创建后的项目结构。 首先看一下左边的目录结构:
1、
从名字来看,它配置了App,包括一个app.json5文件。 app.json5中使用的字符串和图像分别引用media目录中的.json配置和图像。
app.json5配置:
{
"app": {
"bundleName": "com.example.myapplication",//包名
"vendor": "example",//厂商
"versionCode": 1000000,//版本号,数字形式
"versionName": "1.0.0",//版本号,字符串形式
"icon": "$media:app_icon",//应用图标,设置里,非桌面,应用管理那个地方
"label": "$string:app_name",//应用名称,设置里,非桌面,应用管理那个地方
}
}
鸿蒙区分了“应用程序图标和标签”和“入口图标和标签”,这是不一样的地方。 前者是指设置中应用程序管理下的应用程序名称和图标; 后者在桌面上,点击进入应用程序位置。 ,可以配置多种配置,在下面的入口目录下配置。
2.进入
该项目模块被编译并构建以生成HAP包。 它主要包括:
还有一个.json5:Stage模型模块配置文件,有很多配置项。 目前发现这里配置了点击桌面图标的入口文件和权限(如网络权限)。
3.还有一些配置,后面会用到。 暂时保留默认设置;
预览页面
打开页面文件(pages/Index.ets)时,点击右侧的 可以预览该页面的显示效果。 尝试修改字符串的值。 保存时app开发,预览会自动更新。
如果您正在编辑其他页面,请单击上面的刷新图标切换到预览当前编辑的页面。
使用模拟器
单击以启动模拟器。 首次安装时不可用。 您需要安装模拟器,然后为模拟器安装系统。 只需按照提示操作即可。
点击安装模拟器
点击下载图标安装模拟器系统
然后点击绿色的播放按钮启动模拟器
模拟器看起来相当精致。
然后选择您的模拟器来调试您的程序。 该模拟器相当流畅,可与iOS模拟器相媲美,因此开发不需要真机。
但模拟器在更改代码后无法实时更新,模式也无法调试入口文件(),只能调试页面和组件,所以*好将它们结合起来一起使用。
代码分析
我们看一下系统自动为我们生成的页面Index.ets文件:
是不是感觉很熟悉? 好吧,我们就跟着感觉走吧。 有一篇文字,再来一篇怎么样? 它有文本“下一步”和一个单击事件。
// 先声明一个按钮的title
@State title: string = 'Next'
// 再初始化一个按钮,然后title放上去,然后调属性click,OK自动弹出来一个onClick事件,
// 事件干嘛呢,改变一下message的值吧
// 看Row和column组件有宽和高,再设置一个宽高吧
// 于是乎:
Button(this.title)
.onClick(()=>{
this.message = "Hello Harmony"
})
.width(100)
.height(40)
OK,点击按钮,上面的文字就改变了。 太奇妙了!
好啦,来来来,儿子快放学了,我去接他,做饭。 这不考虑代码分析。 明天我们继续分析。
我刚刚学习,如果理解不正确或者有什么问题请指正。