HarmonyOS第一课——DevEco Studio的使用

农民  论坛元老 | 2025-1-16 14:59:02 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 1000|帖子 1000|积分 3000

HarmonyOS第一课

DevEco Studio的使用

集成开发环境:


  • SDK
  • 构建插件
  • ohpm等工具
   DevEco Studio提供开箱即用的开发体验,将HarmonyOS SDK、Node.js、Hvigor、OHPM、模拟器平台等举行合一打包,简化DevEco Studio安装设置流程。
  HarmonyOS SDK已嵌入DevEco Studio中,无需额外下载设置。HarmonyOS SDK可以在DevEco Studio安装位置下DevEco Studio\sdk目录中查察。如需举行OpenHarmony应用开发,可通过Settings > OpenHarmony SDK页签下载OpenHarmony SDK。
  Hello World:



  • Project name:HelloWorld
  • Buidle name:com.example.helloworld
  • Save location:
  • Compatible SDK:5.0.0(12)
  • Module name(模块名):entry
  • Device type:Phone Tablet 2in1 Car…
主动签名:


  • File > Project Structure, Project,Signing Configs,default:

    • Sign in 使用华为账号,登陆后签名材料会主动下载

      • Team
      • Store file(*.p12)
      • Store password
      • Key alias
      • Key password
      • Sign alg
      • Profile file(*.p7b)
      • Cerpath file(*.cer)

    • 点击OK 完成设置;

签名完成后,在本地天生密钥(.p12)、证书哀求文件(.csr)、数字证书(.cer)及Profile文件(.p7b),数字证书在AppGallery Connect网站的“证书、APP ID和Profile”页签中可以查察。
   之后就可以运行项目;
  诊断开发环境


  • 为了您开发应用/服务的精良体验,DevEco Studio提供了开发环境诊断的功能,资助您辨认开发环境是否完备。您可以在欢迎页面单击Diagnose举行诊断。如果您已经打开了工程开发界面,也可以在菜单栏单击Help > Diagnostic Tools > Diagnose Development Environment举行诊断。
  • DevEco Studio开发环境诊断项包罗电脑的设置、网络的连通环境、依赖的工具是否安装等。如果检测结果为未通过,请根据检查项的描述和修复发起举行处理。
设置中的 Plugins,支持安装插件,如去Installed“Chinese”简体中文插件,实现汉化;需要重启见效;
ArkTS应用

   Application应用开发, Atomic Service对应为元服务开发
  模板名称分析Empty Ability用于Phone、Tablet、2in1、Car设备的模板,展示底子的Hello World功能。Native C++用于Phone、Tablet、2in1、Car设备的模板,作为应用调用C++代码的示例工程,界面显示“Hello World”。[CloudDev]Empty Ability端云一体化开发通用模板。更多信息请拜见端云一体化开发。[Lite]Empty Ability用于Lite Wearable设备的模板,展示了底子的Hello World功能。可基于此模板,修改设备类型及RuntimeOS,举行小型嵌入式设备开发。请拜见创建Lite工程。Flexible Layout Ability用于创建跨设备应用开发的三层工程结构模板。三层工程结构包罗common(公共本领层)、features(底子特性层)、products(产物定制层)。Embeddable Ability用于开发支持被其他应用嵌入式运行的元服务的工程模板。

  • 选择 Empty Ability模版
  • 设置工程界面,Compatible SDK选择“5.0.0(12)”,其他参数保持默认设置即可
项目介绍:


  • AppScope > app.json5:应用的全局设置信息
  • entry:HarmonyOS工程模块,编译构建天生一个HAP包

    • src > main > ets:用于存放ArkTS源码。
    • src > main > ets > entryability:应用/服务的入口。
    • src > main > ets > entrybackupability:应用提供扩展的备份规复本领。
    • src > main > ets > pages:应用/服务包罗的页面。
    • src > main > resources:用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、结构文件等。
    • src > main > module.json5:模块设置文件。主要包罗HAP包的设置信息、应用/服务在具体设备上的设置信息以及应用/服务的全局设置信息。
    • build-profile.json5:当前的模块信息 、编译信息设置项,包罗buildOption、targets设置等。
    • hvigorfile.ts:模块级编译构建任务脚本。
    • obfuscation-rules.txt:肴杂规则文件。肴杂开启后,在使用Release模式举行编译时,会对代码举行编译、肴杂及压缩处理,掩护代码资产。详见开启代码肴杂。
    • oh-package.json5:用来描述包名、版本、入口文件(类型声明文件)和依赖项等信息。

  • oh_modules:用于存放三方库依赖信息。
  • build-profile.json5:工程级设置信息,包罗签名signingConfigs、产物设置products等。其中products中可设置当前运行环境,默认为HarmonyOS。
  • hvigorfile.ts:工程级编译构建任务脚本。
  • oh-package.json5:主要用来描述全局设置,如:依赖覆盖(overrides)、依赖关系重写(overrideDependencyMap)和参数化设置(parameterFile)等。
   表示设备的类型,取值如下:
  

  • phone:手机
  • car:车机
  • tablet:平板
  • tv:智慧屏
  • wearable:智能穿戴
  • 2in1
第一个页面

在“Project”窗口,点击“entry > src > main > ets > pages”,打开“Index.ets”文件,举行页面的编写。
   应该是类js风格的编码方式;
  关于组件结构
  1. @Entry
  2. @Component
  3. struct Second {}
  4. @State
  5. build() {}
  6. Text()
  7. Button()
复制代码
在副一级文件夹上 右击新建 ArkTS File 或新建 Empty Page;
设置新建页面的路由:


  • 打开“entry > src > main > resources > base > profile”,在main_pages.json文件中的“src”下设置第二个页面的路由
  1. {
  2.   "src": [
  3.     "pages/Index",
  4.     "pages/Second"
  5.   ]
  6. }
复制代码
页面间跳转:


  • 页面路由router根据页面url找到目的页面,从而实现跳转。使用页面路由请导入router模块。
  • 如果需要实现更好的转场动效,推荐使用Navigation
   Ark翻译过来时“方舟”
  1. import { router } from '@kit.ArkUI';
  2. import { BusinessError } from '@kit.BasicServicesKit';
  3. .onClick(() => {
  4.   console.info(`Succeeded in clicking the 'Next' button.`)
  5.   // 跳转到第二页
  6.   router.pushUrl({ url: 'pages/Second' }).then(() => {
  7.     console.info('Succeeded in jumping to the second page.')
  8.   }).catch((err: BusinessError) => {
  9.     console.error(`Failed to jump to the second page. Code is ${err.code}, message is ${err.message}`)
  10.   })
  11. })
  12. // 返回按钮绑定onClick事件,点击按钮时返回到第一页
  13. .onClick(() => {
  14.   console.info(`Succeeded in clicking the 'Back' button.`)
  15.   try {
  16.     // 返回第一页
  17.     router.back()
  18.     console.info('Succeeded in returning to the first page.')
  19.   } catch (err) {
  20.     let code = (err as BusinessError).code;
  21.     let message = (err as BusinessError).message;
  22.     console.error(`Failed to return to the first page. Code is ${code}, message is ${message}`)
  23.   }
  24. })
复制代码
真机调试



  • 将搭载HarmonyOS体系的真机与电脑连接
  • 举行签名:点击File > Project Structure… > Project > SigningConfigs界面勾选“Support HarmonyOS”和“Automatically generate signature”,点击界面提示的“Sign In”,使用华为账号登录。等候主动签名完成;
   注:到现在还只是刷教程,转头得买台新电脑。。。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

农民

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表