起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: tengfei

[结贴] 提醒功能

  [复制链接]

84

主题

451

帖子

1437

积分

金牌会员

Rank: 6Rank: 6

积分
1437
QQ
 楼主| 发表于 2016-5-18 21:48:52 | 显示全部楼层
重新测试了,原来是启动bex5运行平台调试模式,后来在studio里运行tomcat,iPhone app能访问,也在后台生成了记录。但Android的登录人没有生成。
用消息推送案例,Android和iPhone上都没有消息。
回复 支持 反对

使用道具 举报

84

主题

451

帖子

1437

积分

金牌会员

Rank: 6Rank: 6

积分
1437
QQ
 楼主| 发表于 2016-5-18 22:56:39 | 显示全部楼层
另外,demo菜单里没看到badge的功能菜单,没有数字图标的演示?backgroundmodel下的页面在哪打开?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2016-5-19 10:45:41 | 显示全部楼层
1.现在的版本一人多终端登录和一终端多人登录都有缺陷
  要确保一终端唯一个人,其他的情况需要自己到数据库中把SA_TERMINAL中这个人和这个终端的数据清了,并且app进程关了重新打开

2.运行/UI2/portal/sample/index.w这个门户功能树上有配置
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

84

主题

451

帖子

1437

积分

金牌会员

Rank: 6Rank: 6

积分
1437
QQ
 楼主| 发表于 2016-5-22 19:04:16 | 显示全部楼层
jishuang 发表于 2016-5-19 10:45
1.现在的版本一人多终端登录和一终端多人登录都有缺陷
  要确保一终端唯一个人,其他的情况需要自己到数据 ...

1) 数字图标在苹果上可以实现。现在问题是怎么把setInterval定时器在什么地方取消掉,即如果我退出(或者超时session),logout,这个定时器应该去掉,否则图标那里数字不停变,但在哪个js里怎么去掉?(不退出就不清掉)。

在Android上提示的 app is running in background,  Doing heavy tasks这个在哪里改成中文?

2)消息发送还是没有实现,苹果可以在terminal里生成记录,但发送消息没有alert。我是用ngrok做的外网服务,跟这个有关系吗?android不能生成terminal记录。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2016-5-23 11:02:24 | 显示全部楼层
1.可以在页面的onunload事件中把setInterval清了
  1.     var interval = "";
  2.         Model.prototype.modelLoad = function(event) {
  3.                 var self = this;
  4.                 interval= setInterval(function(){
  5.                     var idx = self.comp('contents1').getActiveIndex();
  6.                     console.log(2);
  7.                         if (idx === -1 || idx === 2) {
  8.                                 self.comp('contents1').to(0);
  9.                         } else {
  10.                                 self.comp('contents1').next();
  11.                         }
  12.                 },1000)
  13.         };

  14.         Model.prototype.modelUnLoad = function(event){
  15.        
  16.       clearInterval(interval);
  17.      
  18.         };
复制代码

2.可以先在内网下测试看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

84

主题

451

帖子

1437

积分

金牌会员

Rank: 6Rank: 6

积分
1437
QQ
 楼主| 发表于 2016-5-23 12:36:53 | 显示全部楼层
jishuang 发表于 2016-5-23 11:02
1.可以在页面的onunload事件中把setInterval清了
  
2.可以先在内网下测试看看

1)我是在index.js的afterlogin里设置的定时器在图标上显示数字。当我退出登录或者超时,这个清除timer事件在index.w的onunload里用clear就可以吗?我试了onunload事件,logout后定时器没有清掉。

2)内网我试试,那打包时的参数就用内网地址了。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2016-5-23 14:27:45 | 显示全部楼层
可以在logout中调用或者sessionTimeout中调用看看
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

84

主题

451

帖子

1437

积分

金牌会员

Rank: 6Rank: 6

积分
1437
QQ
 楼主| 发表于 2016-5-23 14:53:37 | 显示全部楼层
jishuang 发表于 2016-5-23 14:27
可以在logout中调用或者sessionTimeout中调用看看

不起作用。在这几个事件中,好像都没有走到,用alert调试跟踪,没有触发。而且奇怪的是,我登录logout出去,然后后台运行,再打开app,到登录页面,还没有登录,但已经触发了afterlogin事件。 index里到底应该怎么弄?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35949
发表于 2016-5-23 15:48:41 | 显示全部楼层
没有登录不可能触发afterlogin事件

把想的写到main.w事件中,在这个.w的onload和onunload去定时和销毁
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

84

主题

451

帖子

1437

积分

金牌会员

Rank: 6Rank: 6

积分
1437
QQ
 楼主| 发表于 2016-5-23 22:15:23 | 显示全部楼层
在main.w/js里添加了事件

var timer="";

        Model.prototype.modelLoad = function(event){
                //延迟创建不影响显示
                setTimeout(justep.Util.bindModelFn(this,function(){this.createAgent();},this),0);
                if(this.getContext().isDebug()){
                        $(".debug-mode",this.getRootNode()).removeClass('hide');
                        $(".x-portal-reload",this.getRootNode()).removeClass('hide');
                }
               
                //增加自定义的图标数字显示

                document.addEventListener('deviceready', function() {
                        cordova.plugins.backgroundMode.onactivate = function() {

                                var counter = 0;
                                timer = setInterval(function() {
                                        counter++;
                                        console.log('Running since ' + counter + ' sec');
                                        if (device.platform != 'Android') {
                                                cordova.plugins.notification.badge.set(counter);
                                        }
//                                        if (counter % 15 === 0) {
//                                                cordova.plugins.backgroundMode.configure({
//                                                        text : 'Running since ' + counter + ' sec'
//                                                });
//                                        }
                                }, 2000);
                        };
                        cordova.plugins.backgroundMode.ondeactivate = function() {

                                clearInterval(timer);
                                cordova.plugins.notification.badge.clear();
                        };
                }, false);               
               
                //设置
                cordova.plugins.backgroundMode.enable();
               
        //增加自定义数字显示结束                       
               
        };

        Model.prototype.modelUnLoad = function(event){
                clearInterval(timer);
                cordova.plugins.notification.badge.clear();

        };       

登录进去后,回到苹果桌面,图标上数字累加显示。返回app,注销(没有从内存后台清除app),再返回苹果桌面,数字又开始从1累加显示。
是哪里定时清的不对?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-27 15:46 , Processed in 0.065083 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表