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

uniapp写app做测试手机通知栏展示内容

uniapp写app做测试手机通知栏展示内容

以下代码:只是个简单测试能不能给手机发送消息,能不能引导打开通知权限,能不能进行跳转的功能,

增加  notify.js   以下文件


// 模拟本地通知功能
export function showNotification() {// 1. 检查通知权限(Android)// #ifdef APP-PLUSif (plus.os.name === "Android") {const main = plus.android.runtimeMainActivity();const NotificationManagerCompat = plus.android.importClass("androidx.core.app.NotificationManagerCompat");// 获取主Activity和包名// const main = plus.android.runtimeMainActivity();const pkName = main.getPackageName();// 检测权限状态const isEnabled = NotificationManagerCompat.from(main).areNotificationsEnabled();if (!isEnabled) {uni.showModal({title: "通知权限未开启",content: "请前往设置开启通知权限",confirmText: "去设置",success: () => {try {const Intent = plus.android.importClass("android.content.Intent");const Build = plus.android.importClass("android.os.Build");let intent = new Intent();if (Build.VERSION.SDK_INT >= 26) { // Android 8.0+intent.setAction("android.settings.APP_NOTIFICATION_SETTINGS");intent.putExtra("android.provider.extra.APP_PACKAGE", pkName);} else { // 低版本通用方案const Settings = plus.android.importClass("android.provider.Settings");const Uri = plus.android.importClass("android.net.Uri");intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);intent.setData(Uri.fromParts("package", pkName, null));}main.startActivity(intent);} catch (e) {uni.showToast({ title: "跳转失败", icon: "none" });console.error(e);}}});}}// #endif// 2. 发送通知(固定内容)plus.push.createMessage("这是固定通知内容", // 通知正文(死值)"系统通知",         // 通知标题(死值){cover: true,      // 覆盖旧通知sound: "system",   // 使用系统提示音payload: { path: "/pages/profile/index" }  // 携带跳转路径参数});
}

增加点击事件  随便个地儿

<button @click="triggerNotify">触发模拟通知</button>import { showNotification } from './notify.js';const triggerNotify =()=> {showNotification();uni.showToast({ title: '已发送模拟通知' });}

这只是个简单测试能不能给手机发送消息,能不能引导打开通知页,能不能进行跳转的功能

http://www.dtcms.com/a/295264.html

相关文章:

  • uni-appDay02
  • 从零用java实现 小红书 springboot vue uniapp(14) 集成阿里云短信验证码
  • 复盘—MySQL触发器实现监听数据表值的变化,对其他数据表做更新
  • 图片查重从设计到实现(2)Milvus安装准备etcd介绍、应用场景及Docker安装配置
  • 算法竞赛阶段二-数据结构(34)数据结构链表STL vector
  • 数据结构-4(常用排序算法、二分查找)
  • ​​GOFLY LIVE CHAT:Golang製オープンソース・ライブチャットシステム​
  • PHP文件下载
  • 嵌入式学习-(李宏毅)机器学习(2)-day29
  • 天线增益方向图是怎么绘制的?
  • 【ROS1】09-ROS通信机制——参数服务器
  • JavaSE:学习输入输出编写简单的程序
  • 从java到vue3:第二天
  • 字符串和对象的深拷贝和浅拷贝
  • 教务管理系统学员管理系统模块设计
  • Ubuntu-安装Epics教程
  • 从零构建 Node20+pnpm+pm2 环境镜像:基于 Dockerfile 的两种方案及持久化配置指南
  • NPM/Yarn完全指南:前端开发的“基石“与“加速器“
  • 用LangChain重构客服系统:腾讯云向量数据库+GPT-4o实战
  • AI风险治理“实战”落地:CISO如何将GenAI纳入GRC管控体系
  • 前端面试专栏-前沿技术:30.跨端开发技术(React Native、Flutter)
  • 从零构建:Jenkins与Kubernetes集成的完整指南
  • 借助 VR 消防技术开展应急演练,检验完善应急预案​
  • 血液样本的分类与应用
  • 论文阅读--《Besting the Black-Box: Barrier Zones for Adversarial Example Defense》
  • Elasticsearch 高级查询语法 Query DSL 实战指南
  • 2025年“创新杯”(原钉钉杯) A题 建模思路
  • Java 实现 C/S 架构详解:从基础到实战,彻底掌握客户端/服务端编程
  • Socket编程入门:从IP到端口全解析
  • OSPF路由协议单区域