自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

与辉鸿蒙

赋能最新的HarmonyOS技术和服务,携手开发者共建鸿蒙生态应用。

  • 博客(63)
  • 资源 (7)
  • 收藏
  • 关注

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】18.【端侧工程】病虫害详细信息页面保存按钮

该值是AGC云数据库记录的唯一标识,如果存在则说明已保存过的记录;否则为新的诊断结果,才需保存到云数据库。病虫害详细页面信息视图中需要增加“保存”按钮,把新增的AI诊断结果保存到AGC云数据库、云存储。为病虫害的实体对象添加一个新属性:AGID,AGID是否有值,决定是否显示保存按钮。

2025-06-07 00:45:40 23

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】17.【端侧工程】病虫害详细信息页面布局build实现

病虫害信息页面加载时,根据病虫害实体对象的属性pestname病虫名称是否空,判断是新的诊断,还是已有的病虫害,对应显示AI诊断视图或信息视图。为了宽度满屏显示病虫害图片,需要用到系统能力的设备屏幕属性display,获取当前设备的屏幕宽度,并赋值给Image.width。点击首页病虫害图集列表项,跳转至具体病虫害的详细信息页,内容包括:病虫害图片、农作物品名、病虫害名称、防治办法等。

2025-06-04 11:07:43 252

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】16.【端侧工程】病虫害AI诊断页面布局build实现

打开我们前面新建的PestInfoPage.ets文件,自定义一个AI诊断页面组件PestDiagnosisView,接收2个参数:病虫害实体对象和图片占满屏幕宽度。PestInfoPage页面中加载自定义的组件,定义手机设备宽度变量和图片宽度变量,并在aboutToAppear()方法内获取设备宽度及赋值。下一篇:自定义病虫害信息页面组件。

2025-06-04 01:36:30 201

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】15.【端侧工程】拉起手机摄像头拍照或从相册中选取图片

请参见官方资料:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/camera-overview。打开src>>main>>module.json5文件,在requestPermissions数组中添加ohos.permission.CAMERA。打开手机摄像头拍照或从相册选择图片后,跳转到病虫害详情页面,展示该图片及更多信息。核心技术:相机服务Camera Kit。二、定义拉起手机摄像头异步方法。三、定义打开手机相册异步方法。

2025-06-02 21:33:36 128

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】14.【端侧工程】首页病虫害自定义列表项组件PestListView,避免冗余代码

在HomePage.ets文件中定义一个组件PestListView,该组件必需的3个属性:病虫害图片、农作物名称、病虫害名称。以及接收外部输入参数病虫害实体PestModel。病虫害图片集可能有多个,数据源来自于云端API请求结果或本地数据库。在此我们本地定义一个数据集常量LIST_PEST_DATA。ets>>models>>新建ArkTS文件,命名为PestModel。2.定义病虫害实体类PestModel对象。1.自定义PestListView组件。

2025-06-02 20:58:23 124

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】13.【端侧工程】首页HomePage界面布局结构分析

下一篇:优化ListItem,避免重复代码,需自定义组件PestListView。关键容器组件:Scroll、Swiper、Grid、List。红色:列表项组件listitem+层叠组件stack。红色:上下滚动组件scroll。5.首页build()完整代码。蓝色:轮播组件swiper。黄色:列组件column。绿色:表格组件grid。黑色:列表组件list。

2025-06-01 23:17:09 145

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】12.【端侧工程】Tabs容器组件页签导航栏

四、新建2个页面,“首页”HomePage和“我的”MinePage,作为内容页添加到TabContent(){}。三、TabContent的tabBar属性使用我们自定义的TabBuilder。组件输入参数包括:导航按钮标题、选项索引、默认未选择图标、被选择图标。使用Tabs容器组件实现底部导航栏,切换内容页签。一、创建一个容器页面MainPage.ets。二、自定义tabBar组件。

2025-06-01 10:48:55 252

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】11.【端侧工程】获取手机短信验证码登录注册真机调试注意事项

相同的手机号重复登录时,提示登录失败:already sign in a user ,please sign out at first.1.初始化认证服务auth、CloudFoundationKit,以及配置首选项preferences。这是因为已登录的手机号未正常登出,auth不允许相同手机号重复登录。2.端云一体化工程调试目前只支持真机运行;完成以上初始化及配置,可正常获取短信验证码及登录成功!打开程序入口文件EntryAbility.ets,登出/退出功能在后续的“我的”页面实现。

2025-05-30 11:04:48 315

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】10.【端侧工程】通过首选项Preferences实现用户数据持久化

创建models目录,src>>main>>ets>>models,此目录下新建ArkTS 文件UserModel.ets,即用户信息实体类。通过手机号认证服务接口登录/注册成功返回的用户信息,我们通过Preferences首选项进行存储。登录按钮事件下auth.signIn()成功返回后,保存用户信息。首选项监听接口IPreferencesListener.ets。首选项操作类PreferencesHandler.ets。用户控制器类UserController.ets。

2025-05-29 19:11:45 98

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】09.【端侧工程】用户手机号+短信验证码登录即注册

src>>main>>ets>>pages目录下新建登录页面LoginPage.ets,在登录页面引入auth。调用auth.requestVerifyCode给合法的手机号发送短信验证码。登录按钮调用auth.signIn方法,首次登录时创建用户(登录即注册)获取短信验证码时,需要判断用户输入的手机号是否合法(通过正则表达式)登录/注册成功后,在手机APP端保存auth返回的用户信息。间隔30秒才可以再次请求发送短信验证码,倒计时30秒。下一篇:通过用户首选项实现数据持久化。是否打勾同意《隐私协议》

2025-05-29 16:40:40 205

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】08.【端侧工程】开通手机号码认证服务及集成SDK

注意:认证服务满足多平台多语言版本,我们当前的应用是HarmonyOS平台、ArkTS语言、API12及以上的版本。在AGC平台->打开端云一体项目->项目设置->应用,下载最新的SDK配置文件。“不包含密钥”默认关闭,无需打开。登录AGC->进入之前创建的端云一体项目->认证服务,启用第一个“手机号码”认证方式。SDK安装成功后,在工程中oh_modules目录下可见最新版本的auth@1.0.4。在端侧工程中,右击entry目录,在终端中打开,到此,认证服务的开通和SDK的集成已完成。

2025-05-28 23:54:13 118

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】07.【端侧工程】用户登录/注册-界面布局

布局最外层是Navigation,左上角可返回上一界面。因为登录页面不是APP启动后的第一个界面,不强制用户登录;而是在其他界面操作时要求登录才跳转到登录界面,不登录可返回。核心功能:使用AGC的认证服务-手机号码认证方式,用户使用手机号+短信验证码登录即注册。理解了界面布局之后,需要在build体内声明式实现元素。下一篇:用户登录/注册功能开发。黄色框:层叠布局Stack。二、build()布局实现。红色框:列布局Colum。绿色框:行布局Row。

2025-05-28 11:58:23 178

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】04.创建端云一体化工程项目

进入主开发界面,可见刚刚新建的工程。端侧工程会自动执行“ohpm install”,云侧工程会自动执行“npm install”,以分别下载端侧和云侧依赖。该应用尚未启用数据处理位置,点击跳转到AGC,管理设置默认中国站点,后续开发的云服务资源都将部署在中国站点。3.关联所属项目,并打开我们将使用到的开放能力“认证服务”、“云存储”和“云托管”。4.在APP ID列表中“发布”刚才新建的农民叔叔,之后才能在“我的应用”所见该应用。或在“我的应用”中新建发布,选取新建的APP ID,支持设备选“手机”。

2025-05-23 11:40:40 294

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】06.部署模板示例的云测工程到AGC云端

云数据库部署成功后,DevEco自动从AGC下载云数据库的schema文件至“\Application\AppScope\resources\rawfile\schema.json”路径,该文件是端侧工程API必须引入的配置文件。登录AGC,选择“证书、APP ID和Profile”,新增证书->选择第1步创建的证书请求文件.csr,提交成功后返回列表->右侧下载,将证书保存在本地。登录AGC,选择“证书、APP ID和Profile”,设备->添加设备,提交成功。

2025-05-23 11:02:31 455

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】05.端云一体化开发工程目录结构

主要包含端侧开发工程(Application)与云侧开发工程(CloudProgram)。应用模块,编译构建生成一个HAP。

2025-05-23 10:32:02 221

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】03.什么是端云一体化开发,有什么优势?

讲白了,就是前端程序员能写服务端代码;服务端程序员能写前端代码。使用同一个开发工具DevEco、同一个编程语言ArkTS,创建端云一体工程内置了通用开发模版和资源文件。开发人数少、人力成本低、沟通效率高。云侧工程为端侧应用提供云函数、云数据库、云存储等云端服务,借助Cloud Foundation Kit能力一键部署到AGC云端,自动弹性伸缩、免运维,开发者更聚焦在业务逻辑本身。开发过程中目前仅支持手机真机调试,不支持使用模拟器运行调试。

2025-05-23 10:19:18 153

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】02.核心功能操作路径及ModelArts AI图像识别技术

V1.0版本功能极其简单,核心功能只有“AI诊断分析”,用户路径是:注册/登录->手机拍照或从相册选取->调用AI图像识别能力诊断分析图片->ModelArts AI在线服务返回结果->APP展示病虫害结果->保存我的诊断记录。请关注我的后续文章,如何在华为ModelArts平台上部署AI图像识别模型在线服务。

2025-05-23 09:36:22 172

原创 #放码来战.端云一体化开发#HarmonyOS 5 【农民叔叔】01.人工智能AI诊断分析农作物病虫害APP介绍

传统诊断病虫害的方法是人工目测,但这存在两个问题:一方面,农民并不能保证根据经验做出的判断完全正确;另一方面,由于没有专业人士及时到现场诊断,可能会使病情延误或加重。现在,使用AI图像识别技术可能会使这一问题得到改善。HarmonyOS SDK版本:HarmonyOS 5.0.0 Release SDK及以上,API 13及以上。DevEco Studio版本:DevEco Studio 5.0.0 Release及以上。HarmonyOS系统:HarmonyOS NEXT 5及以上。设备类型:华为手机。

2025-05-23 08:57:48 100

原创 通过LM Studio本地私有化部署DeepSeek-R1模型,无网络也能用

找到以下位置:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,找到LongPathsEnabled的条目,双击打开。选择deepseek-r1 gguf模型文件,根据你自己电脑的配置情况,选择大小合适的参数模型。打开LM Studio客户端,我的模型》模型目录》更改,设置路径地址为gguf文件所在目录的上二级目录文件夹。按右侧窗口提示,选择正确的下载方式,这里需要下载独立的gguf文件保存到指定的文件路径。

2025-02-21 15:48:48 527

原创 【NEXT】网络编程——上传文件(不限于jpg/png/pdf/txt/doc等),或请求参数值是file类型时,调用在线服务接口

1.构建请求体body中的Content-Type: application/octet-stream 与 header中设置的Content-Type: multipart/form-data。最近在使用华为AI平台ModelArts训练自己的图像识别模型,并部署了在线服务接口。五、按钮click事件调用aiAnalyseImg方法,发送请求在线服务接口。注意:接口要求输入的参数名是images,值类型是文件file。接口接收到传入的图片文件,识别图片内容后成功返回结果。

2025-01-30 16:57:37 762

原创 【FAQ】Scroll无法滚动,原因找到了——内嵌的容器组件设置了高度导致的

场景二、scroll内嵌在其他容器内时;记得设置scroll的layoutWeight=1。场景一、scroll用在页面的最外层容器时;不能设置colunm的高度。

2024-12-29 09:45:03 152

原创 【AGC】推荐使用AppGallery Connect认证服务,体验非常好!

墙裂建议大家使用AGC的认证服务,非常方便,减少接口开发和维护成本,直接使用;同时提升了用户数据分析的体验。

2024-12-25 08:50:45 176

原创 【FAQ】端云一体化开发项目,一开始就遇到了问题:CloudProgram Npm安装失败--已解决!

1.在终端 cd命令 切换到cloudprogram目录,配置npm仓地址:"2.然后再次执行npm install命令。安装完成后,重新打开项目即可。

2024-12-06 10:22:34 329

原创 【NEXT】P70升级了纯血鸿蒙next 5.0,可是我女儿“不开心”……

1.手机升级系统后,女儿不玩我手机了,因为蛋仔还没有鸿蒙化🤭😝2.手机系统必须升级Next5.0之后,USB连接电脑DevEco才能识别,进行真机联调👇。

2024-12-05 21:07:52 2701

原创 【HarmonyOS开发模板/组件分享 – 用户隐私政策弹窗】

创建CommDialog.ets代码文件。@Preview@Component: string | Resource = '标题';// 标题// 确认按钮点击事件// 取消按钮点击事件: string | Resource = '确定';// 确定按钮文字: string | Resource = '取消';// 取消按钮文字build() {Column() {.margin({bottom: 12})// 占位Row() {// 左边的取消按钮if (!

2024-11-27 15:53:19 1257

原创 【时间盒子】-【14.任务编辑】修改删除任务

aboutToAppear:页面生命周期。请参考官方文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkts-page-custom-components-lifecycle-0000001820879573Blank():空白填充组件。

2024-10-30 22:25:02 862

原创 【时间盒子】-【13.任务新建】创建一个新任务

Watch、@Provide:对状态变量的监听。请参考我的帖子:https://developer.huawei.com/consumer/cn/forum/topic/0208152234389094513?router:页面路由。

2024-10-29 22:02:05 848

原创 【时间盒子】-【12.任务时长弹窗】设置/修改任务时长

(参考上一篇)

2024-10-25 15:24:41 497

原创 【时间盒子】-【11.任务名称弹窗】

Consume:应用于与后代组件的双向数据同步,应用于状态数据在多个层级之间传递的场景。请参考官方文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkts-provide-and-consume-0000001820879589@ohos.reminderAgentManager:后台提醒代理。

2024-10-24 21:12:35 876

原创 【时间盒子】-【10.自定义弹窗】CustomDialogController

通过此类显示自定义弹窗,便于自定义弹窗的样式和内容。请参考官方文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-methods-custom-dialog-box-V5#customdialogcontroller。

2024-10-14 20:42:58 813

原创 【时间盒子】-【9.任务设置项】自定义任务名称、任务时长等设置项组件

Stage、@Link装饰器的使用;参考我的帖子:https://developer.huawei.com/consumer/cn/forum/topic/0208152234389094513?一、预览。

2024-10-08 00:24:56 597

原创 【时间盒子】-【8.时间选择器】自定义上下午、时分选择器组件

Tips:层叠布局Stack;滑动选择文本组件TextPicker;

2024-09-14 12:08:43 555

原创 【时间盒子】-【7.标题菜单栏】自定义任务页面顶部的标题菜单栏组件

media媒体资源的使用;float.json、color.json资源文件的使用;组件属性的定义。

2024-09-13 18:19:45 615

原创 【时间盒子】-【6.任务页面】在同一个页面新建、编辑任务

Tips:- Column组件的使用;- color.json资源文件的使用。

2024-09-12 10:19:50 645

原创 【时间盒子】-【5.绘制闹钟】动态绘制钟表和数字时间

@Preview装饰器,支持组件可预览;@Component装饰器,自定义组件;Canvas组件的使用;使用RenderingContext在Canvas组件上绘制图形。

2024-09-05 17:07:13 967

原创 【时间盒子】-【4.Hello Harmony】初始程序入口和启动页面

了解程序运行入口,配置启动页面路径和ArkUI基本布局。

2024-09-04 08:49:50 210

原创 【时间盒子】-【3.新建项目】创建元服务工程,选择默认模板Empty Ability

安装完DevEco开发工具,开始创建元服务项目,写代码之前先安装AI智能编码助手插件,让你的编码效率飞起!

2024-09-02 21:59:12 403

原创 【时间盒子】-【2.准备】HarmonyOS 开发前需要准备什么?

①注册华为帐号;②学习路径;③开发者认证;④开发工具;⑤手机电脑。

2024-09-01 10:45:17 691

原创 【时间盒子】-【1.序言】高效人士都在用的时间管理方法。我是如何通过鸿蒙元服务APP实现?

【时间盒子】系列内容将帮助开发者学习如何构建一个全新的HarmonyOS元服务应用,学习使用DevEco Studio创建新项目、使用预览器预览页面、使用真机调试APP、自定义弹窗、使用系统提醒能力(闹钟)、使用首选项数据持久化、熟悉ArkUI页面布局、了解基础组件如Text、Image、Button等。元服务功能虽然简单,但通过本系列学习,可以熟悉鸿蒙应用开发的整个生命周期:从开发语言到开发工具、界面设计到代码编写、功能测试到构建发布。

2024-08-31 22:39:49 361

原创 【QA】真机运行调试元服务,预览时的卡片、添加到桌面/负一屏的卡片都是空白卡片,不显示ArkUI任何元素内容。原因竟然是它

程序运行起来,回到手机桌面,两指一捏:​​进入服务卡片>>其他服务卡片,找到你的元服务程序:​​可见你的卡片内容是空白的,添加到桌面的卡片也是空白的:​​导致空白的原因是运行了Hot Reload entry:​​切换运行entry 就正常了:​​可见卡片内容:​​​​。

2024-08-01 16:03:55 376

C#编码规范

编码规范便于代码阅读、理解。利于后期维护。

2008-02-14

软件设计之道

设计之道,软件设计的最佳选择.

2008-03-03

数据终端使用说明书

详细讲解数据终端的操作步骤.

2008-07-17

时间盒子-【13.任务新建】创建一个新任务

打勾Png图片

2024-10-29

时间盒子-【9.任务设置项】自定义任务名称、任务时长等设置项组件

右向图片

2024-10-08

时间盒子-【7.标题菜单栏】按钮图片

时间盒子-【7.标题菜单栏】按钮图片

2024-09-13

时间盒子-【5.绘制闹钟】动态绘制钟表和数字时间

闹钟图片素材

2024-09-05

时间盒子-【5.绘制闹钟】动态绘制钟表和数字时间

闹钟时针图片

2024-09-05

时间盒子-【5.绘制闹钟】动态绘制钟表和数字时间

闹钟表盘图片

2024-09-05

EF5 DBContext与Entity分离成独立项目

EF的全称是Entity Framework,是微软推出的一款ORM框架,通过面向对象的思想抽象数据库访问层,自动生成与数据库表结构的映射关系。默认生成的.edmx文件下同时生成了.context.tt和entity.tt文件,接下来的操作是要讲entity.tt的数据实体文件分离到独立的类库项目中去。

2017-06-06

MVC4 Model View Controller分离成独立项目-源代码

小项目或功能比较单一的项目可以直接新建一个MVC基本项目类型即可,但随着需求不断迭代,项目的功能模块越来越多,甚至有些模块可以独立开发,这时就要考虑主项目的M/V/C三大部分分离,便于不同角色的工程师专注自己的部分开发、更新及发布部署。

2017-05-12

软件设计的七大原则

软件设计的七大原则,把软件设计的基本原则,利于软件模块开发和扩展.

2008-03-03

MVC4 Model View Controller分离成独立项目

小项目或功能比较单一的项目可以直接新建一个MVC基本项目类型即可,但随着需求不断迭代,项目的功能模块越来越多,甚至有些模块可以独立开发,这时就要考虑主项目的M/V/C三大部分分离,便于不同角色的工程师专注自己的部分开发、更新及发布部署。

2017-05-12

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除