ios - cordova-plugin-local-notification 触发器在 IOS 中不起作用
问题描述
我在 ionic 5 中发现了 cordova-plugin-local-notification 的问题。 https://ionicframework.com/docs/native/local-notifications
我想在 ionic ios 中使用多个通知
import { LocalNotifications } from '@ionic-native/local-notifications/ngx';
...
constructor(private localNotifications: LocalNotifications) { }
sendNoti() {
let scheduleList = [];
const currentDate = moment().add(1, 'minutes');
const currentDate2 = moment().add(2, 'minutes');
scheduleList.push({
id: 1,
text: 'alert',
foreground: true,
vibrate: true,
led: { color: '#FF00FF', on: 500, off: 500 },
});
scheduleList.push({
id: 2,
text: 'noti 1 min',
foreground: true,
vibrate: true,
trigger: { at: new Date(currentDate.toDate()) },
led: { color: '#FF00FF', on: 500, off: 500 },
});
scheduleList.push({
id: 3,
text: 'noti 2 min',
foreground: true,
vibrate: true,
trigger: { at: new Date(currentDate2.toDate()) },
led: { color: '#FF00FF', on: 500, off: 500 },
});
this.localNotifications.requestPermission().then((permission) => {
this.localNotifications.schedule(scheduleList);
});
}
但我收到本地通知 id 1,我没有收到本地通知 id 2 和 id 3。我在输出 xcode 中发现错误
2021-02-13 16:35:15.446376+0700 MyApp[231:3780] 4
2021-02-13 16:35:15.495124+0700 MyApp[231:4162] [local-notification] Next trigger at: (null)
2021-02-13 16:35:15.525587+0700 MyApp[231:4162] [local-notification] Next trigger at: (null)
我的 package.json
{
"name": "moblie_local_notification",
"version": "0.0.1",
"author": "Ionic Framework",
"homepage": "https://ionicframework.com/",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/common": "~10.0.0",
"@angular/core": "~10.0.0",
"@angular/forms": "~10.0.0",
"@angular/platform-browser": "~10.0.0",
"@angular/platform-browser-dynamic": "~10.0.0",
"@angular/router": "~10.0.0",
"@ionic-native/core": "^5.0.0",
"@ionic-native/local-notifications": "^5.31.1",
"@ionic-native/splash-screen": "^5.0.0",
"@ionic-native/status-bar": "^5.0.0",
"@ionic/angular": "^5.0.0",
"cordova-ios": "^5.1.1",
"cordova-plugin-badge": "^0.8.8",
"cordova-plugin-device": "^2.0.2",
"cordova-plugin-local-notification": "^0.9.0-beta.3",
"firebase": "^7.21.0",
"moment": "^2.29.1",
"rxjs": "~6.5.5",
"tslib": "^2.0.0",
"zone.js": "~0.10.3"
},
"devDependencies": {
"@angular-devkit/build-angular": "~0.1000.0",
"@angular/cli": "~10.0.5",
"@angular/compiler": "~10.0.0",
"@angular/compiler-cli": "~10.0.0",
"@angular/language-service": "~10.0.0",
"@ionic/angular-toolkit": "^2.3.0",
"@types/jasmine": "~3.5.0",
"@types/jasminewd2": "~2.0.3",
"@types/node": "^12.11.1",
"codelyzer": "^6.0.0",
"cordova-plugin-ionic-keyboard": "^2.2.0",
"cordova-plugin-ionic-webview": "^4.2.1",
"cordova-plugin-splashscreen": "^5.0.2",
"cordova-plugin-statusbar": "^2.4.2",
"cordova-plugin-whitelist": "^1.3.3",
"jasmine-core": "~3.5.0",
"jasmine-spec-reporter": "~5.0.0",
"karma": "~5.0.0",
"karma-chrome-launcher": "~3.1.0",
"karma-coverage-istanbul-reporter": "~3.0.2",
"karma-jasmine": "~3.3.0",
"karma-jasmine-html-reporter": "^1.5.0",
"protractor": "~7.0.0",
"ts-node": "~8.3.0",
"tslint": "~6.1.0",
"typescript": "~3.9.5"
},
"description": "An Ionic project",
"cordova": {
"plugins": {
"cordova-plugin-local-notification": {},
"cordova-plugin-whitelist": {},
"cordova-plugin-statusbar": {},
"cordova-plugin-device": {},
"cordova-plugin-splashscreen": {},
"cordova-plugin-ionic-webview": {
"ANDROID_SUPPORT_ANNOTATIONS_VERSION": "27.+"
},
"cordova-plugin-ionic-keyboard": {}
},
"platforms": [
"ios"
]
}
}
离子信息
Ionic:
Ionic CLI : 5.4.16 (/usr/local/lib/node_modules/ionic)
Ionic Framework : @ionic/angular 5.3.2
@angular-devkit/build-angular : 0.1000.8
@angular-devkit/schematics : 10.0.8
@angular/cli : 10.0.8
@ionic/angular-toolkit : 2.3.3
Cordova:
Cordova CLI : 9.0.0 (cordova-lib@9.0.1)
Cordova Platforms : ios 5.1.1
Cordova Plugins : cordova-plugin-ionic-keyboard 2.2.0,
cordova-plugin-ionic-webview 4.2.1, (and 6 other plugins)
任何人都有解决此问题的解决方案吗?或者有什么建议插件?
解决方案
推荐阅读
- php - 为什么这个使用 AJAX 动态添加的选择输入不起作用?
- javascript - javascript中的正则表达式限制一些特殊字符,如“%,+,>,<,`”
- r - r - 如果满足条件,则重新排序某些行
- php - 热门在 PHP DOM 文档输出中添加新行 \r\n 和选项卡?
- testing - 嵌入式 Kafka:无法在 5000 毫秒内从 Kafka 检索消息
- angular - 角度显示动态嵌套列表
- php - PHP SQL:如果选中复选框,则更新多行的值
- c++ - 有没有办法在不破坏窗口/上下文的情况下切换全屏?
- spring-security - Spring boot-如何在浏览器关闭或所有选项卡关闭但不在单个选项卡关闭时终止会话
- java - 使用和解析 URL 为 -Djavax.net.ssl.trustStore=
在 JAVA_OPTS PCF 中