登录的接口login.do接口上需要记录关键的信息:userId、设备型号(Android|iPhone)、登录时间、登录IP、设备唯一标识(UUID)

当在另外一台新设备上登录同一帐号时,将userId对应的相关登录设备信息直接进行覆盖,此时如果旧设备进行重连时,因为该uuid已经不是当前服务端的uuid了,所以直接会返回下线通知,返回的主要信息(设备型号时间)

login.do与chat-web.do之前不进行直接的通信,避免相互调用与系统的消耗,IM-Web以userId为key进行存储,当重新连接IM-Web时发现与当前缓存中的设备唯一标识(UUID)不一致时就提示下线通知,如果一致就可以让其进行重连,返回可供连接的IM实例的域名和端口。

 

以上的思路是根据手机QQ和微信的测试结果,反向推导出来的,可能有误。

APP顶号逻辑的更多相关文章

  1. 2条最佳实践App疯狂增长逻辑

    2条最佳实践App疯狂增长逻辑 1.不断打造和强化产品的不可或缺属性 产品的核心价值是什么?对你的客户来言,为什么是你? 2.等待“阿哈时刻” 进入快速推广 用户使用产品眼前一亮的时刻,是用户真正发现 ...

  2. App强更逻辑实现以及版本号如何判断大小

    //在开发中,经常会遇到有些需求需要app强更,思路大概:所有请求都要带上版本号和渠道(android或ios),然后网关对这些版本号判断,如果发现这些版本号是很旧的,就返回错误码或者标志符告诉app ...

  3. tomcat中的Manager App帐号password管理

    tomcat根文件夹下的conf文件夹下有个tomcat-users.xml文件 填写内容例如以下 <? xml version='1.0' encoding='utf-8'? >< ...

  4. ptyhon获取app设备号、包名、activity

    直接上代码: import time import os import re import sys #------------------------------------------------- ...

  5. Appium解决native+webview混合型APP(公众号、小程序)切换webview后元素无法定位问题

    问题:最近在做一个安卓+H5混合开发的APP自动化测试,发现在从native切换到webview后,元素仍然无法找到,报错:no such element 思路:于是思考webview会不会像web页 ...

  6. mui 获取本地APP本版号的两种方式

    第一种 mui.plusReady(function () { mui.getJSON("manifest.json", null, function (data) { vum = ...

  7. APP注册&登陆 逻辑细节

    前言:有多少用户愿意注册登陆,决定了一款产品的最大活跃度. 用户登陆注册系统分为两大类: 自建用户系统:邮箱/手机号/用户名/二维码/人脸识别/指纹 第三方授权用户系统:微信/微博/支付包/豆瓣/Fa ...

  8. 20.如何从app业务逻辑提炼api接口

    在app后端的工作中,设计api是一个很考验设计能力的工作.在项目的初始阶段,只知道具体的业务逻辑,那怎么把业务逻辑抽象和提炼,设计出api呢?通过阅读本文,可解答以上疑惑. 在本文中,是用以前做过的 ...

  9. 微信JSAPI 公众号支付 H5支付以及APP支付 WEBAPI接口开发测试

    统一下单入口 调用该方法入口: public void WxPayAPI() { //string PayPrice ="99.9"; ////订单号 //string Payor ...

随机推荐

  1. hdu 5791 (DP) Two

    hdu 5791 Two Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Tota ...

  2. Phone Gap [error] cmd: Command failed with exit code 1

    下投票 我不知道如何解决这个问题,但尝试了这一点,将解决肯定. 这是由于ANT工具找不到的tools.jar在JRE lib目录下.当我从复制的tools.jar JDK的lib目录下,以JRE li ...

  3. 如何把android中布局文件(.xml)与相关的类(.java)进行关联?

    eg:把一个布局文件名为page1.xml与MainActivity.java(工程自动生成)进行 1.在存放使用资源的res文件夹下的layout文件夹内新建一个XML布局文件,如命名为:page1 ...

  4. 基本数据类型范围大小&&字节大小

    char -128 ~ +127 short -32767 ~ + 32768 unsigned short 0 ~ 65536 int -2147483648 ~ +2147483647 unsig ...

  5. xcode 制作静态库.a文件 详解

    http://blog.csdn.net/kepoon/article/details/21516977 最近在做Apple的IOS开发,有开发静态库的需求,本身IOS的开发,只允许静态库或者Fram ...

  6. Mysql基础3

    一.客户管理系统CRUD二.大数据分页web页面1.MySQL:分页语句limitSELECT * FROM customer LIMIT m,n;m:代表开始记录的索引.从0开始n:一次取多少条 每 ...

  7. 万万没想到,3D打印居然可以做这些逆天设计

    3D打印一直被冠以“高科技”头衔,似乎离我们的日常生活还很遥远.其实不然,随着技术的创新,3D打印技术逐渐深入各个领域,工业生产.商业.医学.建筑.艺术等领域都能看到3D打印技术的影子.它将会改变我们 ...

  8. 初学layer-------web框架

    第一步,文件的下载   http://layer.layui.com/ 第二步,文件的部署即将包放到web端的相关目录下. 第三步,引用layer.js(此框架是基于jquery的)所以要先引用jqu ...

  9. 01:Geoserver发布shapfile,中文字段乱码问题

    软件环境:Geoserver 2.1.0 UDig 1.2.1 shapfile文件结构:FID                  地物名称      变化图斑                     ...

  10. How to configure windows machine to allow file sharing with dns alias (CNAME)

    Source: http://serverfault.com/questions/23823/how-to-configure-windows-machine-to-allow-file-sharin ...