小编Dav*_*ter的帖子

是否有工具将现有的Cordova 3插件安装到Worklight 6.1应用程序中?

Worklight 6.1使用Cordova 3.1.该文档显示了如何创建自己的Cordova插件,但我找不到有关如何将现有Cordova 3样式插件安装到Worklight项目中的任何信息.

我尝试安装JavaScript和本机组件,并编辑类似于我在Worklight 6.0中所做的config.xml,这在某些情况下有效.

但我发现Cordova 3样式插件通常是在考虑Cordova插件管理实用程序的情况下编写的,并不一定只是按原样添加到项目中.

我遇到的特殊问题是在添加到dojo项目的插件代码中使用require()(期望cordova.require()).require()正在解决AMD require(),它很快就加载了"cordova/exec"

当Cordova插件管理工具用于将插件添加到Cordova项目时,它们会自动将插件的javascript包装在cordova.define()函数中,该函数将require()(以及其他一些函数)作为参数传递.所以Cordova 3插件的标准是使用require()而没有资格.

我知道每次使用第三方插件时我都可以手动解决此问题,但是想知道是否有任何指南,工具或做法可以将现有的Cordova 3样式插件添加到Worklight项目中

cordova ibm-mobilefirst

8
推荐指数
1
解决办法
452
查看次数

IBM Worklight 5.0.6.1 - 关闭手机/应用程序时未获得推送通知

我有一个Worklight混合应用程序,在android中使用基本推送通知.如果应用程序在推送通知时正在运行并处于焦点,则其行为与我期望的完全相同.我的应用程序中的通知回调被调用,它弹出一个SimpleDialog. 一切都好.

如果我通过单击主页按钮关闭应用程序,并且新消息到达,我会在Android通知区域中看到通知,当我单击android通知列表中的项目时,该项目将从列表中被解除(但是该应用程序无法重新关注)如果我从应用程序菜单启动我的应用程序,它就坐在我离开的位置,并显示SimpleDialog.(我的通知处理程序被调用) 非常好,但我预计当我在android通知列表中选择通知时,应用程序会成为焦点.

如果我通过单击后退按钮关闭应用程序,并且有新消息到达,我会在Android通知区域中看到通知,当我单击android通知列表中的项目时,该项目将从列表中被解除(但是该应用程序不会重新关注)如果我然后从应用程序菜单启动我的应用程序,它会启动应用程序新鲜(我必须再次登录),我的通知处理程序永远不会被调用. 不太好.

如果我强制停止应用程序,或在发送通知时关闭手机(但保留订阅),通知将永远不会显示在手机上.当我重新启动手机时,我在Android Notification区域没有看到它,并且当我启动应用程序时,我的应用程序中的通知处理程序永远不会被调用. 非常糟糕.

这是预期的行为吗?

我正在使用Worklight 5.0.6.1,我在平台4.2.2的Android模拟器和平台4.1.2的物理手机上看到过这种行为

EDT:添加代码.

适配器:

WL.Server.createEventSource({
    name : "MyPushEventSource",
    securityTest: "MyApp-strong-mobile-securityTest"
});

function submitNotification(userId) {

    var userSubscription = WL.Server.getUserNotificationSubscription(
            'MyPushNotification.MyPushEventSource', userId);

    if (userSubscription == null) {
        return {
            result : "No subscription found for user :: " + userId
        };
    }

    var notification = WL.Server
            .createDefaultNotification("There's work to be done!", 1, {});

    WL.Server.notifyAllDevices(userSubscription, notification);

    return {
        result : "Notification sent to user :: " + userId
    }; …
Run Code Online (Sandbox Code Playgroud)

android push-notification ibm-mobilefirst

2
推荐指数
1
解决办法
1426
查看次数