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

QQ登录

只需一步,快速开始

查看: 3789|回复: 14

[处理中3] 物理返回键接管问题

[复制链接]

22

主题

82

帖子

230

积分

中级会员

Rank: 3Rank: 3

积分
230
QQ
发表于 2017-3-15 13:39:10 | 显示全部楼层 |阅读模式
物理返回键在自己的APP跳转到其他的APP(例如微信分享)再返回到自己的APP上就失效了,是怎么回事?
发表于 2017-3-15 14:18:56 | 显示全部楼层
http://docs.wex5.com/wex5-app-question-list-2003/

那你打印一下 alert(history.length);   历史回退的长度变了吗??如果没变就能回去!!就是浏览器的history对象
http://www.w3school.com.cn/jsref/dom_obj_history.asp
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

22

主题

82

帖子

230

积分

中级会员

Rank: 3Rank: 3

积分
230
QQ
 楼主| 发表于 2017-3-15 15:00:24 | 显示全部楼层
liangyongfei 发表于 2017-3-15 14:18
http://docs.wex5.com/wex5-app-question-list-2003/

那你打印一下 alert(history.length);   历史回退的 ...

变了
回复 支持 反对

使用道具 举报

发表于 2017-3-15 15:12:59 | 显示全部楼层

变成多少了??
0 吗??
只要跳转到分享页面会这样是吧??如果我隐藏后台,再启动其他APP ,然后再切换回来!则路由是正常的!!
只有程序调用打开了微信分享!然后APP的路由就丢失了是吗??请稳定重现和确认下再试试!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

22

主题

82

帖子

230

积分

中级会员

Rank: 3Rank: 3

积分
230
QQ
 楼主| 发表于 2017-3-15 15:51:16 | 显示全部楼层
liangyongfei 发表于 2017-3-15 15:12
变成多少了??
0 吗??
只要跳转到分享页面会这样是吧??如果我隐藏后台,再启动其他APP ,然后 ...

不是0,变成了不同的数字了,我是在APP里面跳转到手机拨号然后再返回APP物理返回键就失效了
回复 支持 反对

使用道具 举报

22

主题

82

帖子

230

积分

中级会员

Rank: 3Rank: 3

积分
230
QQ
 楼主| 发表于 2017-3-15 16:08:10 | 显示全部楼层
liangyongfei 发表于 2017-3-15 15:12
变成多少了??
0 吗??
只要跳转到分享页面会这样是吧??如果我隐藏后台,再启动其他APP ,然后 ...

然后关闭APP再次打开APP物理返回键又有效了
我用的是下面的方法:
var isHomePage =false;                       
                        isHomePage =window.location.hash.indexOf("!main") > 0;
            if (isHomePage) {
                                return true;
                                }
                                        return false;
                       
回复 支持 反对

使用道具 举报

发表于 2017-3-15 16:14:16 | 显示全部楼层
bp711 发表于 2017-3-15 15:51
不是0,变成了不同的数字了,我是在APP里面跳转到手机拨号然后再返回APP物理返回键就失效了 ...

你是怎么跳转到手机拨号页面的??a标签吗??还是js跳转的???
http://docs.wex5.com/wex5-app-question-list-2015/

本地测试没问题!!跳转到拨号页面后,接着回退,APP回退键还是可以生效的!!
我就用的这个案例测试的!/UI2/demo/page/index.w(我用appLoader运行的!)

在/UI2/demo/page/interactive/page3.w 里面添加了拨号代码
<a href="tel:01012345678">打电话</a>

打开页面,打开拨号,回退一切正常!!
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

22

主题

82

帖子

230

积分

中级会员

Rank: 3Rank: 3

积分
230
QQ
 楼主| 发表于 2017-3-18 18:04:30 | 显示全部楼层
liangyongfei 发表于 2017-3-15 16:14
你是怎么跳转到手机拨号页面的??a标签吗??还是js跳转的???
http://docs.wex5.com/wex5-app-questi ...

我用的是这个:
var url = 'tel:' + 12345678910;               
window.location.href = url;
物理接管是用的这个:
shellImpl.useDefaultExitHandler = false;
CommonUtils.attachDoubleClickExitApp(function() {
            var isHomePage =false;
            isHomePage =window.location.hash.indexOf("!main") > 0;
            if (isHomePage) {
                                return true;
                                }
                                return false;
                        
                });
回复 支持 反对

使用道具 举报

发表于 2017-3-20 11:23:34 | 显示全部楼层
bp711 发表于 2017-3-18 18:04
我用的是这个:
var url = 'tel:' + 12345678910;               
window.location.href = url;

你写错了吧!应该是这种写法才对的
window.location.href = 'tel://18810854321';

少了斜杠吧!!

attachDoubleClickExitApp 这个方法你debugger调试跟踪一下吧!执行了吗?
qq:1912779713
WeX5教程--WeX5下载
回复 支持 反对

使用道具 举报

22

主题

82

帖子

230

积分

中级会员

Rank: 3Rank: 3

积分
230
QQ
 楼主| 发表于 2017-3-20 16:12:51 | 显示全部楼层
本帖最后由 bp711 于 2017-3-20 16:15 编辑
liangyongfei 发表于 2017-3-20 11:23
你写错了吧!应该是这种写法才对的
window.location.href = 'tel://18810854321';

在app打开后attachDoubleClickExitApp是执行了的,但是跳出APP后(无论是拨号打电话还是发短信)再回到APP物理返回键就失效了,attachDoubleClickExitApp方法也没执行了。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-20 08:16 , Processed in 0.063340 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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