Android利用融云做异地登录提醒
2024-08-28 12:34:51
在RongCloudEvent下找到onChanged方法
@Override
public void onChanged(ConnectionStatus connectionStatus) { switch (connectionStatus){
case KICKED_OFFLINE_BY_OTHER_CLIENT://用户账户在其他设备登录,本机会被踢掉线
ActivityUtil.reLogout(IHealthActivity.INSTANCE);
break;
}
}
public static void reLogout(final Activity activity) {
final String userName = PreferenceUtils.getPreferLoginName(activity);
PreferenceUtils.clearData(activity);
deleteFilesByDirectory(new File("/data/data/" + activity.getPackageName() + "/shared_prefs"));
PreferenceUtils.modifyStringValueInPreferences(activity, Preferences.LOGIN_USER, userName); //清楚webview缓存
CookieSyncManager.createInstance(activity);
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.removeAllCookie(); IHealthClient.resetAsyncHttpClient();
activity.finish();
IHealthActivity.INSTANCE.finish();
final Intent intent = new Intent(activity, LoginActivity_.class);
intent.putExtra("onRestar","onRestar");
activity.startActivity(intent);
} 实际上是调用注销的方法 如果帐号在别的设备中登录 清楚缓存后跳转至登录页面 简单提醒
Bundle bundle = this.getIntent().getExtras();
if (bundle != null) {
String onRestar = bundle.getString("onRestar");
if (onRestar.equals("onRestar")){
showDialog();
}
}
public void showDialog(){
final AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("提示");
builder.setMessage("您的帐号在异地登录,请重新登录");
builder.setInverseBackgroundForced(true);
builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { @Override
public void onClick(final DialogInterface dialog, final int which) {
dialog.dismiss();
}
});
builder.show();
}
最新文章
- 死去活来,而不变质:Domain Model(领域模型) 和 EntityFramework 如何正确进行对象关系映射?
- 嵌入式Linux驱动学习之路(二十四)Nor Flash驱动程序
- 【iCore3 双核心板】【发布基于 iCore3的显示模块(包含7寸屏,4.3寸屏,vga模块等】
- iOS 6.0之后支持一个页面横屏的方法
- 通过Nginx部署Django(基于ubuntu)
- Java—接口与抽象类
- mysql字段的适当冗余有利于提高查询速度
- ASP.NET 共用类库1
- RMAN备份与恢复实例
- Google Code Jam Round 1C 2015 Problem A. Brattleship
- BZOJ 2431 HAOI2009 在列的数目的顺序相反 递归
- Strusts2--课程笔记5
- Python scikit-learn机器学习工具包学习笔记
- SSM-Spring-01:Spring的概念+入门案例
- jpa 联合查询方法
- linux初次入门学习小结
- 20、MySQLdb
- BZOJ3149 CTSC2013 复原 搜索
- 27.移除元素(c++方法实现)
- Hive:解决Hive创建文件数过多的问题
热门文章
- LoadRunner检查点使用小结
- jLim - 紧凑的 JavaScript 框架
- codeforces 441B. Valera and Fruits 解题报告
- bzoj3143游走——期望+高斯消元
- Babel转码器
- VS2010中编写x64汇编的具体方法
- C:根据日期判断是一年的第几天、星期几
- Asp.net MVC 使用PagedList(新的已更名 为X.PagedList.Mvc) 分页
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 01. 创建项目 +项目结构和配置简介
- The IBM Blockchain Platform:Installing the development environment