当前位置: 首页 > news >正文

网站建设的开发方式计算机包含哪些专业

网站建设的开发方式,计算机包含哪些专业,石家庄网站推广方案,个人网页设计制作题目目的目录 1、通知流程 2、发布通知 2.1、发布基础类型通知 2.1.1、接口说明 2.1.2、普通文本类型通知 2.1.3、长文本类型通知 2.1.4、多行文本类型通知 2.1.5、图片类型通知 2.2、发布进度条类型通知 2.2.1、接口说明 2.2.2、示例 2.3、为通知添加行为意图 2.3.1、接…         目录 1、通知流程 2、发布通知 2.1、发布基础类型通知  2.1.1、接口说明 2.1.2、普通文本类型通知 2.1.3、长文本类型通知 2.1.4、多行文本类型通知 2.1.5、图片类型通知 2.2、发布进度条类型通知 2.2.1、接口说明 2.2.2、示例 2.3、为通知添加行为意图 2.3.1、接口说明 2.3.2、示例 应用可以通过通知接口发送通知消息终端用户可以通过通知栏查看通知内容也可以点击通知来打开应用。 通知常见的使用场景 显示接收到的短消息、即时消息等。 显示应用的推送消息如广告、版本更新等。 显示当前正在进行的事件如下载等。 HarmonyOS通过ANSAdvanced Notification Service通知系统服务对通知类型的消息进行管理支持多种通知类型如基础类型通知、进度条类型通知。 1、通知流程 通知业务流程由通知子系统、通知发送端、通知订阅端组成。一条通知从通知发送端产生通过IPC通信发送到通知子系统再由通知子系统分发给通知订阅端。 通知发送端可以是三方应用或系统应用。开发者重点关注。 通知订阅端只能为系统应用比如通知中心。通知中心默认会订阅手机上所有应用对当前用户的通知。开发者无需关注。 2、发布通知 2.1、发布基础类型通知  基础类型通知主要应用于发送短信息、提示信息、广告推送等支持普通文本类型、长文本类型、多行文本类型和图片类型。 类型 描述 NOTIFICATION_CONTENT_BASIC_TEXT 普通文本类型。 NOTIFICATION_CONTENT_LONG_TEXT 长文本类型。 NOTIFICATION_CONTENT_MULTILINE 多行文本类型。 NOTIFICATION_CONTENT_PICTURE 图片类型。 目前系统仅通知栏订阅了通知将通知显示在通知栏里。 2.1.1、接口说明 通知发布接口如下表所示不同发布类型通知由NotificationRequest的字段携带不同的信息。 接口名 描述 publish(request: NotificationRequest, callback: AsyncCallbackvoid): void 发布通知。 cancel(id: number, label: string, callback: AsyncCallbackvoid): void 取消指定的通知。 cancelAll(callback: AsyncCallbackvoid): void; 取消所有该应用发布的通知。 2.1.2、普通文本类型通知 普通文本类型通知由标题、文本内容和附加信息三个字段组成其中标题和文本内容是必填字段。 normalNotification() {let notificationRequest {id: 1,content: {contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT, // 普通文本类型通知normal: {title: test_title,text: test_text,additionalText: test_additionalText,}}}NotificationManager.publish(notificationRequest, (err) {if (err) {console.error([ANS] failed to publish, error[${err}]);return;}console.info([ANS] publish success);});}运行效果如下 2.1.3、长文本类型通知 长文本类型通知继承了普通文本类型的字段同时新增了长文本内容、内容概要和通知展开时的标题。通知默认显示与普通文本相同展开后标题显示为展开后标题内容内容为长文本内容。 longTextNotification() {let notificationRequest {id: 1,content: {contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_LONG_TEXT, // 长文本类型通知longText: {title: 标题测试,text: 标题文本测试,additionalText: test_additionalText,longText: 这里测试一个很长很长很长的问题看是如何显示在通知栏上的,briefText: test_briefText,expandedTitle: 这个是通知展开时的一个长长长的标题看在通知栏展开时如何展示,}}}// 发布通知NotificationManager.publish(notificationRequest, (err) {if (err) {console.error([ANS] failed to publish, error[${err}]);return;}console.info([ANS] publish success);});} 上图中左边是没有展开长文本通知时的截图右边是展开长文本通知时的样式。  说明经过测试如果长文本通知并不长系统自己判断此时将直接显示长文本通知内容。下面是一个示例 长文本通知文本不长时的情况 longTextNotification() {let notificationRequest {id: 1,content: {contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_LONG_TEXT, // 长文本类型通知longText: {title: 标题测试,text: 标题文本测试,additionalText: test_additionalText,longText: 这里测试一个很长很长很,briefText: test_briefText,expandedTitle: 这个是通知展开时的,}}}// 发布通知NotificationManager.publish(notificationRequest, (err) {if (err) {console.error([ANS] failed to publish, error[${err}]);return;}console.info([ANS] publish success);});}此时效果如下 2.1.4、多行文本类型通知 多行文本类型通知继承了普通文本类型的字段同时新增了多行文本内容、内容概要和通知展开时的标题。通知默认显示与普通文本相同展开后标题显示为展开后标题内容多行文本内容多行显示。 let notificationRequest {id: 1,content: {contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_MULTILINE, // 多行文本类型通知multiLine: {title: test_title,text: test_text,briefText: test_briefText,longTitle: test_longTitle,lines: [line_01, line_02, line_03, line_04],}} }// 发布通知 NotificationManager.publish(notificationRequest, (err) {if (err) {console.error([ANS] failed to publish, error[${err}]);return;}console.info([ANS] publish success); }); 运行效果如下 2.1.5、图片类型通知 图片类型通知继承了普通文本类型的字段同时新增了图片内容、内容概要和通知展开时的标题图片内容为PixelMap型对象其大小不能超过2M。 // 图片构造 const color new ArrayBuffer(60000); let bufferArr new Uint8Array(color); for (var i 0; ibufferArr.byteLength;i) {bufferArr[i] 60;bufferArr[i] 20;bufferArr[i] 220;bufferArr[i] 100; } let opts { editable:true, pixelFormat:ARGB_8888, size: {height:100, width : 150}}; await image.createPixelMap(color, opts).then(async (pixelmap) {await pixelmap.getImageInfo().then(imageInfo {console.log(size: JSON.stringify(imageInfo.size));}).catch(err {console.error(Failed to obtain the image pixel map information. JSON.stringify(err));return;})let notificationRequest {id: 1,content: {contentType: notify.ContentType.NOTIFICATION_CONTENT_PICTURE,picture: {title: test_title,text: test_text,additionalText: test_additionalText,picture: pixelmap,briefText: test_briefText,expandedTitle: test_expandedTitle,}},}// 发送通知NotificationManager.publish(notificationRequest, (err) {if (err) {console.error([ANS] failed to publish, error[${err}]);return;}console.info([ANS] publish success );});}).catch(err{console.error(create pixelmap failed JSON.stringify(err));return;}) 运行效果如下 图片类型的通知在Harmoney4.0及之前的手机上展示不了图片而在模拟器上(HarmoneyOS4.0)则正常应该是兼容性问题。 2.2、发布进度条类型通知 进度条通知也是常见的通知类型主要应用于文件下载、事务处理进度显示。HarmonyOS提供了进度条模板发布通知应用设置好进度条模板的属性值如模板名、模板数据通过通知子系统发送到通知栏显示。 目前系统模板仅支持进度条模板通知模板NotificationTemplate中的data参数为用户自定义数据用于显示与模块相关的数据效果示意如下图所示。 2.2.1、接口说明 isSupportTemplate()是查询模板是否支持接口目前仅支持进度条模板。 接口名 描述 isSupportTemplate(templateName: string, callback: AsyncCallbackboolean): void 查询模板 2.2.2、示例 progressNotification() {NotificationManager.isSupportTemplate(downloadTemplate).then((data) {console.info([ANS] isSupportTemplate success);let isSupportTpl: boolean data; // isSupportTpl的值为true表示支持支持downloadTemplate模板类通知false表示不支持if (isSupportTpl) {this.doShowProgressNotification()} else {console.error(Not support progress type notification!!!!)}}).catch((err) {console.error([ANS] isSupportTemplate failed, error[${err}]);});}doShowProgressNotification() {let template {name:downloadTemplate,data: {title: 标题,fileName: music.mp4,progressValue: 30,progressMaxValue:100,}}//构造NotificationRequest对象let notificationRequest {id: 1,slotType: NotificationManager.SlotType.OTHER_TYPES,template: template,content: {contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,normal: {title: template.data.title template.data.fileName,text: sendTemplate,additionalText: 30%}},deliveryTime: new Date().getTime(),showDeliveryTime: true}NotificationManager.publish(notificationRequest).then(() {console.info([ANS] publish success );}).catch((err) {console.error([ANS] failed to publish, error[${err}]);});} 运行效果如下 2.3、为通知添加行为意图 WantAgent提供了封装行为意图的能力这里所说的行为意图主要是指拉起指定的应用组件及发布公共事件等能力。HarmonyOS支持以通知的形式将WantAgent从发布方传递至接收方从而在接收方触发WantAgent中指定的意图。例如在通知消息的发布者发布通知时通常期望用户可以通过通知栏点击拉起目标应用组件。为了达成这一目标开发者可以将WantAgent封装至通知消息中当系统接收到WantAgent后在用户点击通知栏时触发WantAgent的意图从而拉起目标应用组件。 为通知添加行为意图的实现方式如下图所示发布通知的应用向应用组件管理服务AMSAbility Manager Service申请WantAgent然后随其他通知信息一起发送给桌面当用户在桌面通知栏上点击通知时触发WantAgent动作。 携带行为意图的通知运行方式 2.3.1、接口说明 具体接口描述详见WantAgent接口文档。 接口名 描述 getWantAgent(info: WantAgentInfo, callback: AsyncCallbackWantAgent): void 创建WantAgent。 trigger(agent: WantAgent, triggerInfo: TriggerInfo, callback?: CallbackCompleteData): void 触发WantAgent意图。 cancel(agent: WantAgent, callback: AsyncCallbackvoid): void 取消WantAgent。 getWant(agent: WantAgent, callback: AsyncCallbackWant): void 获取WantAgent的want。 equal(agent: WantAgent, otherAgent: WantAgent, callback: AsyncCallbackboolean): void 判断两个WantAgen 2.3.2、示例 wantAgentInfo() {let wantAgentObj null; // 用于保存创建成功的WantAgent对象后续使用其完成触发的动作。// 1. wantAgentInfolet wantAgentInfo {wants: [{action: event_name, // 设置事件名。parameters: {},}],operationType: wantAgent.OperationType.SEND_COMMON_EVENT,requestCode: 0,wantAgentFlags: [wantAgent.WantAgentFlags.CONSTANT_FLAG],}// 2. 创建WantAgentwantAgent.getWantAgent(wantAgentInfo, (err, data) {if (err) {console.error([WantAgent]getWantAgent err JSON.stringify(err));} else {console.info([WantAgent]getWantAgent success);wantAgentObj data;}});// 3. 构造NotificationRequest对象let notificationRequest {content: {contentType: NotificationManager.ContentType.NOTIFICATION_CONTENT_BASIC_TEXT,normal: {title: Test_Title,text: Test_Text,additionalText: Test_AdditionalText,},},id: 1,label: TEST,wantAgent: wantAgentObj,}// 4. 通知发送NotificationManager.publish(notificationRequest, (err) {if (err) {console.error([ANS] failed to publish, error[${err}]);return;}console.info([ANS] publish success );});}
http://www.hkea.cn/news/14511721/

相关文章:

  • 电商网站建设报价百度网页版浏览器入口
  • 做选择的网站首页中山网站建设哪家便宜
  • 苏州建设交通招聘信息网站网页设计图片轮播
  • 南京酒店网站制作百度指数1000搜索量有多少
  • 微信网站开放微网站ui多少钱
  • pc蛋蛋游戏体验网站建设贺州招聘网站建设
  • 兴化 网站开发用cdr做网站设计尺寸要多少
  • 网站平台建设工作汇报wordpress 七牛上传插件
  • 咋样查看网站用什么编程语言做的营销100个引流方案
  • 电子商务网站的建设流程是怎样的wordpress修改文章链接地址
  • 水利建设工程网站做彩票网站被捉将受到什么惩罚
  • 公司网站建立费用wordpress自定义打不开
  • 网站建设及优化wordpress二开
  • 网站设计论文经济可行性分析淘宝官方网站主页
  • 免费企业网站建立网易企业邮箱怎么认证
  • 工厂弄个网站做外贸如何处理万网网站制作
  • 国外做的比较的ppt网站有哪些方面wordpress升级失败
  • 网站结构有哪几种微信公众号与网站绑定
  • 建设机械官方网站网站建设兼职在哪找
  • asp装修公司网站wordpress客户端定制
  • 网页开发公司网站做网站具体流程
  • seo网站推广案例广告宣传方式有哪些
  • 课程中心网站建设内容dnf免做卡领取网站
  • 百度站长工具排名WordPress如何更改文章链接
  • 一般网站模块佛山找企业的网站
  • 深圳网站制作十年乐云seo品牌wordpress无需代码建站
  • 软件网站的服务器wap网站搜索
  • 网站开发阶段网上营销的方式
  • 百度的网站关键词被篡改网页升级未成年人自觉离开
  • 无锡做网站公司有哪些电话宁波搭建网站公司