无论里面的路由层级进入到多少了,一按安卓的虚拟返回键或者手势返回都直接关闭 webview,回到 App 了,iOS 没有出现,只有 Android 这样,路由用的是 hash 模式,是路由模式的原因吗?
|
HongJaySep 17, 2020
1
需要原生处理
|
|
yikuoSep 17, 2020 via Android
2
是因为 Android 的 app 没有处理返回事件
|
|
3
|
|
OHynSep 17, 2020 via Android
4
客户端的问题,可以处理。
|
|
fansanggSep 18, 2020
5
叫 Android 重写 onbackpressd 判断是否可以 back
|
|
pultakoSep 18, 2020
6
原生拦截 back 按键也就几行代码的事情
|
|
7
|
|
Nuttertoo1sSep 18, 2020
8
@gromit1337 还是交给原生做吧,很快的。webview 有接口能判断网页是否可以返回,然后配合拦截 back 按键可以实现不错的效果体验
|
|
koorSep 18, 2020
9
单页应用这个要原生处理的,因为只有一个 webview,关了就没了
|
|
OHynSep 18, 2020
10
@gromit1337 不行,这是那个返回按钮的定义问题,无论是 history mode or hash mode,都是往 history 里加记录罢了,阻止不了这个返回按钮的行为。
|
|
96412hjSep 18, 2020
11
估计客户端不想做,可能有历史遗留问题,也可能是💩山
|
|
12
@96412hj #11 是的!最后我还是苦逼的改成一个个 html 页面了!
|
|
96412hjSep 19, 2020
13
@gromit1337 #12 你还是太好说话了,你就咬定是客户端的问题,前端可以改,但是得花费很长时间,安卓只需要加几个判断,甩给他
|