plus.storage.getItem 如果放在后台运行(如 打开别的app,html5+的app会转入后台运行) 是取不到值的吗
为什么 我取不到?应该是可以取到的吧,目前暂时只能用localStorage来替代。
顺便说明一下,放到后台以后,页面上的 定时器 竟然是可以允许的,哈哈·
setInterval(function() {
var dateNow = moment(new Date()).format('YYYY/MM/DD');
var asyc_mark = plus.storage.getItem(KEY_Buidings_asyc_mark);
if (Date.parse(asyc_mark) >= Date.parse(dateNow)) {
console.log('不需要同步' + asyc_mark);
return callback(null);
}
console.log(' 准备同步' +asyc_mark+','+ dateNow);
}, 10*1000);//1分钟
下面这样的代码 一旦程序切到后台运行了,就会一直执行这段代码
console.log(' 准备同步' +asyc_mark+','+ dateNow);
查看log 原来是 var asyc_mark = plus.storage.getItem(KEY_Buidings_asyc_mark); 这个取不到值。
这个原来还有这个问题吗???
4 个回复
RayZhao
同问
Android_磊子
请问是安卓还是IOS平台。
阿峰 (作者)
安卓平台 IOS平台都 一样的·
Android_磊子
这样写是没有问题,可能跟你setItem的value值有关系,是否有特殊字符?之前遇到过特殊字符时会有个bug,此bug已经修改,等待发版更新,注意HBuilder中releaseNote
2015-12-22 12:30
阿峰 (作者)
没有特殊字符····
value = 1或者0
这个应该不算特殊字符吧·
2015-12-22 12:44
x***@163.com
回复 Android_磊子:setInterval切换到后台可以运行,但是打包出来的app貌似在后台就不能运行了 怎么解决
2016-05-27 19:40
Android_磊子
使用HBuilder 真机调试会有问题吗,HBuilder使用的runtime基座就是云打包出来的。
2016-05-30 11:34
阿峰 (作者)
我把 1,0 转化成字符串 存储起来 问题解决了 - -!
2016-10-30 19:00
ali
KEY_Buidings_asyc_mark 这个是啥?