移动开发:原生应用和嵌入的Web程序之间如何保持登陆状态的同步


如题:
项目开始时使用的原生app开发的,android,ios都分别开发,后来有新需求过来时,考虑到时间以及成本,就采用BS架构,用web方式开发。

但遇到一个问题:原生的app在用户登录之后,如果将这个状态带给web app。还有退出状态等等,这些如何使两者能够同步?

Android webapp ios 移动web开发

lulutou 11 years, 2 months ago

不同功能点……那不就是应用内部部分功能,在App内部调用浏览器实现吗。

那也一样,调用浏览器时告知Web App登录事件,任何原因离开浏览器时告知注销事件。

不过在应用内部,一切封闭,就无所谓了。这种“事件”式的传递方法,对用户来说和真正的“共享”登录会话也就没什么区别。


不能。白费心机。楼主你赶快死心吧,别在不可能的事情上寻求办法。

就像PC上,你在一个浏览器中的登录状态,无法传递到另一个浏览器一样。在移动设备上也是一样,一个应用不可能,也不应该悄无声息的操作另一个应用的内部逻辑。

碰了这条红线,就是流氓软件,万夫所指,没有任何商量的余地。

这个事情唯一能做到的就是像一般计算机的淘宝/阿里旺旺那样,在原生App调用Web App时,通过在URL中交换认证数据来传递登陆状态。

而这样也就只能做到原生App登录后,还得必须是从原生App调用Web App,才能传递登陆状态。退出状态倒也可以用这个思路传递(退出时告知服务器,让服务器不再认为用户登录Web App的cookie和会话有效)。

这样其实也算不上同步,只能勉强说是事件的传递。因为你终究控制不住浏览器自己去登录、注销、更换用户乃至清楚痕迹。但能做到的,也就仅此而已了。

我是李宇春他哥 answered 11 years, 2 months ago

Your Answer