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

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

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

增加 notify.js 以下文件

复制代码
// 模拟本地通知功能
export function showNotification() {
  // 1. 检查通知权限(Android)
  // #ifdef APP-PLUS
  if (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: '已发送模拟通知' });
    }

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

相关推荐
郑州光合科技余经理11 小时前
海外版外卖加盟:总站与分站配送规则怎么分开管
java·开发语言·前端·后端·uni-app·php·ai编程
遗憾随她而去.2 天前
uniApp跨端开发: 解决不同平台显示差异问题
uni-app
程序鉴定师5 天前
2026年深圳小程序/App开发公司技术选型指南:从架构设计到交付标准全维度评估
java·小程序·uni-app·php·objective-c
Q26433650235 天前
【有源码】基于uni-app的旅游行程规划小程序-基于微信小程序的智慧文旅综合服务平台
java·微信小程序·小程序·uni-app·毕业设计·springboot·源代码
qq_316837756 天前
阿里云百炼 fun-asr-realtime uniapp vue3 调用
javascript·vue.js·uni-app
特创数字科技6 天前
uniapp 图片全能处理|全平台支持(鸿蒙、安卓、苹果、web),实现九宫格、水印、滤镜、压缩、拼图
uni-app
2501_916007476 天前
苹果应用商店App Store上架费用标准及原因解析
android·ios·小程序·https·uni-app·iphone·webview
00后程序员张7 天前
苹果App Store上架指南:费用、原理与步骤详解
android·ios·小程序·https·uni-app·iphone·webview
特创数字科技7 天前
【uni-app x】告别系统相机限制!三端通用自定义相机组件:任意布局、静默拍照、录像、水印叠加、连拍回图一次搞定
前端·数码相机·uni-app
Martin -Tang7 天前
uniapp app嵌套webview 弹窗方式
android·ios·uni-app