在 IBM Worklight 中使用 katzer 本地通知
Posted
技术标签:
【中文标题】在 IBM Worklight 中使用 katzer 本地通知【英文标题】:Using katzer local notification in IBM Worklight 【发布时间】:2014-06-06 08:17:36 【问题描述】:我想在https://github.com/katzer/cordova-plugin-local-notifications使用这个cordova插件
如何将此插件与我现有的 IBM Worklight 项目集成?我尝试了各种方法来整合它,但没有任何结果。
我目前从 logcat 收到此错误:
02-24 11:15:03.035: D/CordovaLog(2439): file:///data/data/com.iCareApp/files/www/default/index.html: Line 17 : Uncaught TypeError: Cannot read property 'notification' of undefined
或者还有其他更简单的方法可以完成这项工作吗?基本上我希望能够根据存储在我的应用程序中的数据在特定时间安排设备上的本地通知
【问题讨论】:
【参考方案1】:我按照下面的方法让它工作了。
演示项目:https://www.dropbox.com/s/58urdluauc8u3l1/androidLocalNotifications.zip
因为 Worklight 不支持 Cordova 的 Plugman 以轻松“安装”Cordova v3 插件,所以需要一些人工才能正确设置所有这些...... 废话。
注意 appName ,它用于插件声明的整个过程。如果您在应用中使用不同的名称,则需要相应地更新值。
注意nativeResources
文件夹,我已将我编辑的文件放在其中:
head
元素中引用<script src="js/local-notification.js"></script>
在 main.js 中:
function wlCommonInit()
window.plugin.notification.local.add( message: 'this is a local notification' );
以上将在应用程序启动后立即发送本地通知。In the plug-in's homepage您可以阅读有关可能的通知选项的更多信息。
在 local-notification.js 中:
在顶部添加:cordova.define("LocalNotification", function(require, exports, module)
在底部添加:);
在生成的Android项目\assets\www\default\js\worklight\cordova_plugins.js中,添加:
,
"file": "../js/local-notification.js",
"id": "LocalNotification",
"clobbers": [
"plugin.notification.local"
]
请注意,重新构建 Worklight 项目将覆盖此文件,因此您在其中所做的更改将消失...您需要在每次构建后重复此步骤。
我找不到在 Worklight Studio 构建之间保留对此文件的更改的好方法。
【讨论】:
经过几次试验和错误后,我得到了类似的工作方式。感谢你的回答。如何设置特定时间的通知。我如何设置日期对象与时间说 11.30 PM ? 我没有尝试所有选项,但查看插件网站 - 他们提供的文档非常清楚。如果您有其他与插件相关的问题,请联系其作者 - 插件网站中有一封电子邮件。以上是关于在 IBM Worklight 中使用 katzer 本地通知的主要内容,如果未能解决你的问题,请参考以下文章
在 IBM Worklight 中使用 katzer 本地通知
使用 IBM Worklight 和 IBM Bluemix 推送通知
IBM 的 Worklight xcode .framework 文件