Note for iSON

飞行模式下的离线优先架构:Android网络状态检测与自动同步实践 现代移动应用对网络状态的判断不能只看系统开关。飞行模式作为系统级射频开关,与真正的网络可用性不能划等号,用户仍可能在飞行模式下手动开启Wi-Fi。可靠的做法是通过ConnectivityManager与NetworkCallback监听实际网络路径,并以NET_CAPABILITY_VALIDATED作为能否访问互联网的核心标志。但感知网络状态只是起点,离线优先架构才是关键:本地先写入保证用户操作即时成功,再异步同步。Android平台以WorkManager作为后台调度器,可持久化同步任务并自动重试,在断 阅读详情
CMEXPORT:PLANID=0,TEMPTYPE=0,DATATYPE="all",SUBNET="all",FILTER="",FMT=1,RES="";
CMSON EXPORT:DEVICEID=ALL ;
ison采用配置下行方案是 创建规划区--数据导入--合法性检查--数据提交--建立激活任务-- act 激活任务--删除规划区。
"C:\Program Files\HaoZip\HaoZip.exe" "%1"   HaoZip

1.demo-src存放了服务端的源代码和proto编译工具,这个东西之前我给大家讲过了,很容易的
2.ums-server存放了一个demo的补丁包,使用demo的时候只能采用weblite5_11_20版本进行测试,并且安装的时候采用规模,安装完成后何入补丁,删除进程下面的tmp目录,
启动ums-server\utils\aosfilestorage\run.bat然后运行业务模型:ums-server\utils\operationmodel\operationmodel.bat 运行完成止之后关闭两个进程,然后启动服务端就好了。
修改版本:
install-5.11.20.P3.zip\conf\install.properties
E:\ison\ums-server\procs\ppus\aos.ppu\aos-web.pmu\aos-web.ear\aos-web.war\res\aos-web-framework\index.html
E:\ison\ums-server\works\global\deploy\deploy-aos.properties


修改定时任务的执行时间:
修改这个TIMINGTASK_TABLE表里面的数据,id为3的,里面放的分钟数/60就是小时
E:\Soft\sqleonardo-2009.03.rc1>java -jar sqleonardo.jar  用户名 app  密码 test  数据库名:umsdb  端口号:21420
aos-weblite-5.11.20.P3.zip\install\dbscript\dbscript-en\aosfilestorage\aos\common\uca-timingtask-init-aosfilestorage.sql
1、修改安装包中的文件:aos-weblite-5.11.20.P3.zip\install\dbscript\dbscript-en\aosfilestorage\aos\common\uca-timingtask-init-aosfilestorage.sql
2、修改这句话:
insert into TIMINGTASK_TABLE (TASKNAME, STARTTIME, ID) Values('Historical Data Archiving',1320,'3');中的“1320”,把这个数字除以60,即为小时数。

你的域账户:Your name 's  Pinyin/Jqm-753951


默认用户密码:admin:A272389179CBDD71AA2FD55FB849AEF3


修改安装时的机器名:
1、在控制中心修改console configuration,右键update console instance
2、修改文件\ums-server\works\global\deploy\deploy-usf.properties  usf.usf.uep.db.ip=10.*.*.*


iams emb port:在iams第一次启动的日志文件svr-ucf里面去搜索EmbListenPort。
deby数据库图形化工具sqleonardo.jar deby数据库图形化工具sqleonardo.jar,解压后,双击即可使用, 立即下载

相关推荐

Derby客户端sqleonardo

Derby的客户端可视化管理工具,Java版,需要的朋友下来看看

数据库客户端SQLeonardo的使用

数据库客户端SQLeonardo的使用      这篇文章要介绍SQLeonardo。我使用了一下,挺不错,一个jar包,加载不同的驱动之后,可以连接很多类型的数据库,我只连接了HSQL和Oracle两个数据库。下面简单介绍一下。     首先当然是先要到官方下载了,地址是:http://sourceforge.net/project/showfiles.php?group_id=182744 ...

weixin_34354945的博客 277

SQLeonardo 通用JDBC数据库管理工具

只要支持JDBC的数据库就可以用这个小工具来管理。包括数据CRUD,创建Database等等。 只有一个jar文件,不用安装。

derby操作-sqleonardo

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34061482的博客 271

给IC设计新人的Tessent Scan入门指南:从RTL到ATPG的完整DFT流程解析

本文为IC设计新手提供Tessent Scan的完整DFT流程指南,从RTL代码检查到ATPG测试向量生成,详细解析扫描链配置、插入及验证的关键步骤。通过实战案例和工具命令示例,帮助工程师快速掌握Tessent工具链的应用技巧,提升芯片可测试性设计的效率和质量。

weixin_32541663的博客 451

泛微Ecology9接口调用全流程:从配置到实战Java代码解析

本文详细解析了泛微Ecology9系统接口的完整调用流程,涵盖安全架构、服务端配置与客户端Java实战代码。重点阐述了基于RSA加密的认证机制、Token管理策略,并提供了企业级集成的核心代码示例与生产环境调优建议,帮助开发者安全、高效地实现系统对接。

m9n0o的博客 840

Flutter+OpenHarmony实战:flashlight】手电筒项目

《Flutter手电筒UI交互Demo技术解析》 本文介绍了一个基于Flutter实现的手电筒视觉交互Demo项目,重点剖析了其核心实现技术和OpenHarmony平台适配方案。该项目通过纯UI效果模拟手电筒开关状态,主要演示了以下技术点: 状态管理:使用_isOn布尔变量控制开关状态,通过setState触发UI重建 手势交互:通过GestureDetector实现全屏点击切换功能 动画效果:采用AnimatedContainer实现背景色和灯光区域的平滑过渡动画 视觉模拟:利用BoxShadow光晕效果

gao_dou的博客 511

[企业AI落地] RAG 知识库系统在多租户环境下的细粒度权限隔离设计

多租户 RAG 系统真正的风险不只是搜不到,而是把不该看到的内容查出来、说出来、写回去。本文结合多客户售后知识助手场景,用元数据结构、向量检索过滤、回答策略和审计回写示例拆解租户、资源、检索、生成、审计五层权限边界。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 221

【HarmonyOS 6】活动标签管理页面实现

标签列表展示:区分预设标签和自定义标签新增标签:包含名称输入、颜色选择、评分开关删除标签:支持删除数据或转移数据两种方式。

2503_94458334的博客 1876

C#面试题及详细答案120道(61-75)-- 多线程与异步

本文摘要了前后端面试题中关于线程与并发的核心知识点,包括线程与进程的区别(61题)、Thread/ThreadPool/Task的对比(62题)、线程安全实现方法(63题)、lock关键字的原理(64题)、Monitor类的进阶用法(65题)以及死锁的成因与避免(66题)。通过C#代码示例和表格对比,清晰展示了多线程编程的关键概念、应用场景及常见问题解决方案,适合开发者快速掌握面试高频考点。完整内容可访问专栏目录获取更多技术面试题解析。

大剑师兰特的GIS世界 1432

基于深度学习的柠檬等级检测系统 —— YOLOv8 + UI界面 + 数据集

本项目的目标是构建一个柠檬等级检测系统,通过深度学习模型自动检测柠檬的等级。自动检测柠檬等级:通过图像中的柠檬特征,自动判断其成熟度和质量。实时视频检测:通过摄像头实时监控柠檬的质量等级。用户友好的UI界面:为用户提供简洁直观的操作界面,支持图像上传、实时视频检测等功能。本项目展示了如何基于YOLOv8模型开发一个柠檬等级检测系统,结合PyQt5实现了用户友好的UI界面。通过该系统,用户可以快速上传柠檬图像并自动识别其等级,极大提升了检测效率和准确性。数据集的扩展。

YOLO 1112

数据持久化最佳实践

本文从 HarmonyOS 数据持久化的全景对比出发,系统梳理了 Preferences 轻量存储、RelationalStore 关系型数据库、分层架构设计、数据安全与版本迁移等核心主题,并通过完整的用户配置中心实战案例展示了最佳实践的应用。

从事移动开发八年,csdn博客专家,阿里云特邀专家,华为云云享专家,高级网络信息安全工程师,大数据工程师(高级),python技术开发(高级),HarmonyOS 应用开发者高级认证,现在某学校任教。 1万+

基于AI的智能开发环境—Trae在Web开发中的应用实战与性能评估【Trae项目实战】

Trae 是一款与 AI 深度集成的开发工具,提供智能问答、代码自动补全和基于 Agent 的 AI 自动编程能力,极大提升开发效率。它具备完备的 IDE 功能,如代码编写、项目管理和源代码管理等,同时还具备强大的 AI 助手,能够提供智能问答、实时代码建议、代码片段生成等服务。开发者可以通过自然语言与 AI 协作,从 0 到 1 开发项目,AI 会根据需求自动生成代码或创建文件。

一键难忘的博客 3万+

如何利用Swift-Sharing实现SwiftUI、UIKit和Observable模型的无缝状态同步

在iOS和macOS应用开发中,状态管理一直是开发者面临的核心挑战之一。Swift-Sharing提供了一个终极解决方案,让开发者能够以极少的代码实现跨组件、跨框架的状态同步和数据持久化。这个强大的库通过`@Shared`属性包装器,为SwiftUI、UIKit和Observable模型提供了统一的状态管理体验,彻底改变了传统状态管理的复杂性。 ## 🚀 Swift-Sharing核心功能概述

gitblog_00555的博客 436

论文复现5:UMI Universal Manipulation Interface

UMI 采用手持式夹具,加上精心的界面设计,可实现便携式、低成本和信息丰富的数据收集,以进行具有挑战性的双手和动态操作演示。配备这些功能后,UMI 框架解锁了新的机器人操作功能,只需更改每个任务的训练数据,即可实现零样本可推广的动态、双手、精确和长视野行为。我们通过全面的现实世界实验展示了 UMI 的多功能性和有效性,其中通过 UMI Zeroshot 学习的策略在对不同的人类演示进行训练时可以推广到新的环境和对象。项目主页:https://umi-gripper.github.io/

github_38060285的博客 1979

自抗扰控制(ADRC)理论与工程实践:6.1 离散时间ADRC的推导

本文系统阐述了自抗扰控制(ADRC)的离散化方法,重点对比了前向欧拉法和基于零阶保持器(ZOH)的精确离散化两种方法。前向欧拉法计算简单但精度较低,稳定性受采样周期约束;ZOH法精度高但对大采样周期更鲁棒。文章详细推导了跟踪微分器、扩张状态观测器和控制律的离散形式,分析了采样周期选择的关键因素,为ADRC的数字实现提供了理论指导。

技术工作者 197

基于HarmonyOS API 24智慧宠物养护社区实现通过 `filter` 方法过滤出匹配分类的商品,每次 `selectedCategory` 变化时触发 UI 刷新

在 HarmonyOS NEXT 正式商用的背景下,ArkTS 作为鸿蒙生态的官方应用开发语言,正在从传统的命令式 UI 开发范式向声明式 UI 范式全面迁移。ArkUI 框架以组件化、声明式、状态驱动为核心特征,要求开发者以"描述 UI 应该是什么样"而非"一步步操作 UI 怎么变"的思维方式构建界面。

2301_79516720的博客 239

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

家庭记账理财基于HarmonyOS ArkTS 24实现金额字段 `formAmount`,因为 `TextInput` 组件绑定的是字符串,在提交时通过 `parseFloat` 转换为数字进行验证

健身管理类应用与之前分析的外卖、招聘等应用有本质差异——它的核心数据不是"交易"或"任务",而是"时间序列的身体状态数据":每次训练有时长、卡路里、组数、重量;每次饮食有热量、蛋白质、碳水、脂肪;每周有运动时长趋势图。这些数据的共同特征是"随时间积累,用户需要横向对比和趋势分析"。这导致健身App的数据层设计必须从第一天就考虑"历史数据查询"和"多维度聚合"的需求,而非仅关注当前单条记录的增删改查。健身应用的用户行为模式也有独特之处:用户使用健身App的目标是"坚持",而不是"一次性完成任务"。这意味着激励

2301_79516720的博客 194

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

OpenHarmony 项目统一全局样式、尺寸、色彩主题封装 ThemeUtil(API23)

项目中文字大小、颜色、圆角、间距、按钮尺寸、阴影等样式值分散写在各个页面,出现多处硬编码 #007DFF、fontSize (18)、padding (12),后期产品统一换肤、调整主色调需要全局逐行修改,维护成本极高。封装全局主题常量 ThemeUtil,统一管理主色 / 辅助色 / 文字色、间距、圆角、字体大小、通用阴影,支持一键切换深色 / 浅色两套主题,所有页面、组件统一引用主题变量,一键全局换色。

Helen_cai的博客 246

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

婚礼策划管理系统:基于HarmonyOS API 24的全链路技术解析,遍历每一条目,取出 category,如果该分类尚未在集合 s 中出现过(!s[n]),则标记为已出现并推入结果数组

健身管理类应用与之前分析的外卖、招聘等应用有本质差异——它的核心数据不是"交易"或"任务",而是"时间序列的身体状态数据":每次训练有时长、卡路里、组数、重量;每次饮食有热量、蛋白质、碳水、脂肪;每周有运动时长趋势图。这些数据的共同特征是"随时间积累,用户需要横向对比和趋势分析"。这导致健身App的数据层设计必须从第一天就考虑"历史数据查询"和"多维度聚合"的需求,而非仅关注当前单条记录的增删改查。健身应用的用户行为模式也有独特之处:用户使用健身App的目标是"坚持",而不是"一次性完成任务"。这意味着激励

2301_79651252的博客 259

基于 HarmonyOS ArkTS API 24 Reusable 组件复用装饰器页面跳转组件缓存复用性能优化攻略

鸿蒙操作系统(HarmonyOS)是华为面向全场景智慧生活打造的分布式操作系统,其应用开发框架ArkUI采用ArkTS作为核心开发语言。ArkTS在TypeScript的基础上进行了深度扩展,不仅保留了静态类型系统的编译期安全检查能力,还针对声明式UI开发范式引入了装饰器系统、组件化结构和状态驱动机制。在ArkTS中,interface用于定义数据结构契约,struct配合装饰器用于定义UI组件,function用于封装纯逻辑函数,这三者共同构成了应用的基础代码骨架。ArkTS的强类型约束要求所有变量声明、

wilbur1688的博客 386

HarmonyOS 6 ArkUI‑ImageAnimator 帧动画图片序列播放资源释放不及时内存溢出规避方案

鸿蒙操作系统(HarmonyOS)是华为面向万物互联时代打造的分布式操作系统,其核心设计理念是实现多设备、多场景的无缝协同。在应用开发层面,鸿蒙提供了ArkUI声明式UI开发框架,该框架采用了全新的ArkTS语言作为主要开发语言。ArkTS是在TypeScript基础上扩展而来的,它继承了TypeScript的静态类型检查能力,同时针对鸿蒙的声明式UI范式做了深度优化和语法扩展。与传统的命令式UI开发不同,ArkTS通过装饰器系统(如@Component、@Entry、@State、@Builder等)来声

wilbur1688的博客 334

HarmonyOS ArkTS API 24 Web 组件加载本地 html 网页文件网页与 ArkTS 双向通信交互教程

HarmonyOS 是华为推出的面向全场景的分布式操作系统,其应用开发框架基于 ArkUI 声明式编程范式,使用 ArkTS 作为主力开发语言。ArkTS 在 TypeScript 的基础上进行了扩展与约束,引入了 @Component、@State、@Builder 等装饰器,使开发者能以简洁、类型安全的方式构建高性能的移动应用界面。声明式 UI 的核心思想是"状态驱动视图"。开发者只需描述界面在某一状态下的样子,框架会自动在状态变化时重新渲染受影响的组件。这与传统的命令式 UI(如 Android Vi

wilbur1688的博客 246

OpenHarmony AppStorage 全局状态管理跨页面传参开发(API Version23 + 适配版)

AppStorage 是 OpenHarmony ArkUI 跨页面、跨组件全局状态管理核心容器,API Version23 大幅优化深度数据监听、绑定校验、内存回收机制,区分双向可编辑与单向只读两种绑定模式,彻底解决低版本对象、数组修改界面不刷新的核心痛点。开发时区分路由临时传参与全局持久内存数据,登录态、主题、全局配置统一存入 AppStorage,搭配 Preferences 可实现应用重启数据不丢失。

Helen_cai的博客 282

HarmonyOS ArkTS API 24 滚动Tabs横向滑动性能优化,Scrollable页签大量Item渲染流畅度提升方案

在文博文旅深度融合的数字化浪潮中,文化遗产的探索与保护正从纸质档案走向智能终端。从大雁塔的唐代楼阁式砖塔到西安城墙的明代城垣遗存,从碑林博物馆的石刻碑林到兴教寺塔的玄奘遗骨,每一处全国重点文物保护单位都需要精确的地理标注、清晰的保护等级分类和即时的现场交互能力。传统文博应用往往面临三大瓶颈:地图标注与保护名录割裂导致信息孤岛、下载资源来源不可追溯导致版权风险、图像元数据无法读写导致老照片修复链路断裂。这三个瓶颈分别对应着地图能力链、Web 能力链和图像能力链的断裂,使得文博数据的"地理坐标—网页溯源—图像元

2401_86049470的博客 281

HarmonyOS ArkTS API 24 自定义弹窗脱离 Navigation 导航栈关闭后残留遮罩问题根治方案

鸿蒙的声明式 UI 开发范式(ArkUI)是一种以数据驱动视图的现代前端开发模式。开发者通过描述界面的结构关系和状态绑定关系,让框架自动完成视图的更新与刷新。在"团建管家"这个应用中,我们可以清晰地看到这一范式的核心特征:组件化拆分、状态驱动渲染、数据与视图分离。该应用采用纯前端模拟数据的方式构建,所有数据以常量数组的形式定义在文件顶部,通过一系列 getter 函数进行封装和过滤后传递给组件。这种设计虽然在真实项目中会被网络请求层替代,但它清晰地展示了"数据流"的方向和边界。应用的整体架构可以分为三个清晰

wilbur1688的博客 573
上一篇: Note for Sybase
下一篇: Note for Eclipse
Adminse
博客等级 码龄15年 0粉丝 14原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值