通过集成实现登录,通过网易云信官网自带的控制台可以实现账号注册,不再赘述。其实开发者手册上写的很明白,可以先对照着看看。
https://doc.yunxin.163.com/docs/TM5MzM5Njk/zU4NzUxNjI?platformId=60002
首先,在整个工程的 build.gradle 文件中,配置 repositories,使用 jcenter 或者 maven ,二选一即可,如下:

allprojects {repositories {jcenter() // 或者 mavenCentral()}
}

再是根据自己项目的需求,添加不同的依赖,我的依赖如下

dependencies {implementation fileTree(dir: 'libs', include: '*.jar')// 添加依赖。注意,版本号必须一致。// 基础功能 (必需)implementation 'com.netease.nimlib:basesdk:8.7.2'// 聊天室需要implementation 'com.netease.nimlib:chatroom:8.7.2'// 通过云信来集成小米等厂商推送需要implementation 'com.netease.nimlib:push:8.7.2'// 超大群需要implementation 'com.netease.nimlib:superteam:8.7.2'// 全文检索插件implementation fileTree(dir: 'libs', include: ['*.jar'])implementation 'com.netease.nimlib:lucene:8.7.2'implementation 'androidx.appcompat:appcompat:1.1.0'implementation 'com.google.android.material:material:1.1.0'implementation 'androidx.constraintlayout:constraintlayout:1.1.3'implementation 'androidx.legacy:legacy-support-v4:1.0.0'implementation files('libs\\universal-image-loader-1.9.4-with-sources.jar')
//    implementation project(path: ':uikit')testImplementation 'junit:junit:4.+'androidTestImplementation 'com.android.support.test:runner:1.0.2'implementation 'com.google.code.gson:gson:2.8.8'implementation 'de.hdodenhof:circleimageview:2.1.0'androidTestImplementation 'androidx.test.ext:junit:1.1.1'androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'}

在 AndroidManifest.xml 中加入以下配置(请将 com.netease.nim.demo 替换为自己的包名):

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"package="com.netease.nim.demo"><!-- 权限声明 --><!-- 访问网络状态--><uses-permission android:name="android.permission.INTERNET" /><uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/><!-- 外置存储存取权限 --><uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><!-- 多媒体相关 --><uses-permission android:name="android.permission.CAMERA"/><uses-permission android:name="android.permission.RECORD_AUDIO"/><!-- Android11:V8.6.1及之后的版本不需要;其他:V4.4.0及之后的版本不需要 --><uses-permission android:name="android.permission.READ_PHONE_STATE"/><!-- 控制呼吸灯,振动器等,用于新消息提醒 --><uses-permission android:name="android.permission.FLASHLIGHT" /><uses-permission android:name="android.permission.VIBRATE" /><!-- 8.0+系统需要--><uses-permission android:name="android.permission.FOREGROUND_SERVICE" /><!-- 下面的 uses-permission 一起加入到你的 AndroidManifest 文件中。 --><permissionandroid:name="com.netease.nim.demo.permission.RECEIVE_MSG"android:protectionLevel="signature"/><uses-permission android:name="com.netease.nim.demo.permission.RECEIVE_MSG"/><application...><!-- APP key, 可以在这里设置,也可以在 SDKOptions 中提供。如果 SDKOptions 中提供了,则取 SDKOptions 中的值。 --><meta-dataandroid:name="com.netease.nim.appKey"android:value="key_of_your_app" /><!-- 云信后台服务,请使用独立进程。 --><serviceandroid:name="com.netease.nimlib.service.NimService"android:process=":core"/><!-- 云信后台辅助服务 --><serviceandroid:name="com.netease.nimlib.service.NimService$Aux"android:process=":core"/><!-- 云信后台辅助服务 --><serviceandroid:name="com.netease.nimlib.job.NIMJobService"android:exported="true"android:permission="android.permission.BIND_JOB_SERVICE"android:process=":core"/><!-- 云信监视系统启动和网络变化的广播接收器,保持和 NimService 同一进程 --><receiver android:name="com.netease.nimlib.service.NimReceiver"android:process=":core"android:exported="false"><intent-filter><action android:name="android.intent.action.BOOT_COMPLETED"/><action android:name="android.net.conn.CONNECTIVITY_CHANGE"/></intent-filter></receiver><!-- 云信进程间通信 Receiver --><receiver android:name="com.netease.nimlib.service.ResponseReceiver"/><!-- 云信进程间通信service --><service android:name="com.netease.nimlib.service.ResponseService"/><!-- 云信进程间通信provider --><providerandroid:name="com.netease.nimlib.ipc.NIMContentProvider"android:authorities="com.netease.nim.demo.ipc.provider"android:exported="false"android:process=":core" /><!-- 云信内部使用的进程间通信provider --><!-- SDK启动时会强制检测该组件的声明是否配置正确,如果检测到该声明不正确,SDK会主动抛出异常引发崩溃 --><providerandroid:name="com.netease.nimlib.ipc.cp.provider.PreferenceContentProvider"android:authorities="com.netease.nim.demo.ipc.provider.preference"android:exported="false" /></application>
</manifest>

然后到这一步基本环境已经部署完毕
然后新建MyApplication完成初始化

public class MyApplication extends Application {/*** 注意:每个进程都会创建自己的Application 然后调用onCreate()方法,* 如果用户有自己的逻辑需要写在Application#onCreate()(还有Application的其他方法)中,一定要注意判断进程,不能把业务逻辑写在core进程,* 理论上,core进程的Application#onCreate()(还有Application的其他方法)只能做与im sdk 相关的工作*/@Overridepublic void onCreate() {// ... your codes// SDK初始化(启动后台服务,若已经存在用户登录信息, SDK 将进行自动登录)。不能对初始化语句添加进程判断逻辑。super.onCreate();NIMClient.init(this,null,null);// NimUIKit.init(this);\
}}

下面是登录函数

 public void doLogin() {String username = etUsername.getText().toString();String password = etPassword.getText().toString();
//        System.out.println(username);
//        System.out.println(password);//if(username==1){LoginInfo info = new LoginInfo(username, password);RequestCallback<LoginInfo> callback =new RequestCallback<LoginInfo>() {@Overridepublic void onSuccess(LoginInfo param) {Log.i("112", "login success");// your codeToast.makeText(MainActivity.this, "登录成功~", Toast.LENGTH_SHORT).show();//  SendImage();SharedPreferences.Editor editor=sharedPreferences.edit();editor.putString("username", etUsername.getText().toString());editor.putString("password", etPassword.getText().toString());editor.apply();Intent server = new Intent(MainActivity.this, IMService.class);startService(server);Intent intent = new Intent(MainActivity.this, TitleActivity.class);startActivity(intent);}@Overridepublic void onFailed(int code) {if (code == 302) {Log.i(TAG, "账号密码错误");// your codeToast.makeText(MainActivity.this, "密码错误请重试~", Toast.LENGTH_SHORT).show();} else {// your codeSystem.out.println(code);}}@Overridepublic void onException(Throwable exception) {Toast.makeText(MainActivity.this, "外星电波干扰了服务器QAQ", Toast.LENGTH_SHORT).show();}};//执行手动登录NIMClient.getService(AuthService.class).login(info).setCallback(callback);// }}

完毕,在主界面调用登录函数即可登录。如果有错误或者改进的地方欢迎探讨,谢谢!

安卓集成网易云信SDK实现登录功能相关推荐

  1. 反向编译了子弹短信的 APK,核心功能为整合网易云信 SDK

    坚果 Pro2s 京东开卖两周,评论仅1.1万.TNT 预定数量不足100台.但是8月20日锤子科技的产品发布会上,「子弹短信」火了. 但是这个子弹短信到底好不好用呢?正所谓没有调查就没有发言权,作者 ...

  2. 反向编译了子弹短信的 APK,核心功能为整合网易云信 SDK?

    热文导读 | 点击标题阅读 金九银十跳槽季如何进阶找到合适满意的工作? 15 年没写代码,濒临被裁,50 岁开发者如何绝地求生? 2018 年 8 月面试路:6 天 21 家公司 作者:祥子 原文:h ...

  3. 网易云信SDK V3.1.0版本发布啦

    最近天气渐冷,小伙伴们要注意保暖:有女朋友的抱紧女朋友,没女朋友的就抱紧主机. -from 贴心的云小信 10月26日,网易云信SDK V3.1.0版发布,本次版本主要发布功能为:群组聊天室禁言,聊天 ...

  4. 集成网易云信实现自定义消息(类似淘宝聊天发送商品信息)

    上篇文章,我们整理了网易云信的快速集成过程.有兴趣的小伙伴可以移步到:ios集成网易云信IM功能遇到的坑 .简单的实现一对一聊天界面或者查看最近联系人列表.我们只需直接调用NIMKit里面的NIMSe ...

  5. 6月2日,网易云信SDK全面支持IPv6

    2016年5月初,Apple公司官方发文告知用户,6月1日之后提交的版本,必须支持 IPv6-only 的网络环境.为此,Apple还发布了官方指南告知用户如何兼容 IPv6-only 的环境. 而网 ...

  6. 网易im即时聊天php怎么接入,网易云信IM即时通讯功能接入方式与流程_如何收费_企业服务汇...

    编者按:很多企业在考虑使用网易云信提供的IM即时通讯功能,对于企业应当如何接入该功能.接入方式和流程是怎样的.应当如何收费等不太清楚.企业服务汇通过评测网易云信IM即时通讯功能来告诉你答案. 网易云信 ...

  7. 【人人开源】集成通过Token认证统一登录功能

    [人人开源]集成通过Token认证统一登录功能 后端 https://gitee.com/renrenio/renren-fast 前端 https://gitee.com/renrenio/renr ...

  8. 网易邮箱发送邮件实现登录功能

    网易邮箱发送邮件实现登录功能 0.登录自己的网易云邮箱 1.依赖 <!--邮件--><dependency><groupId>org.springframework ...

  9. 网易云信SDK V3.2.0版发布啦!

    网易云信V3.2.0版升级发布啦!本次版本发布的主要功能有:安卓添加64位支持.安卓接入小米推送.多人白板.多人白板的服务端录制,新增多端会话消息已读未读同步.新增音视频通话未接通状态的抄送.iOS的 ...

最新文章

  1. Java设计模式百例(番外) - Java的clone
  2. 本地tomcat的start.bat启动时访问不出现小猫图标
  3. Winform中实现读取xml配置文件并动态配置DevExpress的RadioGroup的选项
  4. java 自定义一个容器类
  5. TensorFlow学习笔记(二十八)CNN的9大模型之AlexNet
  6. java 字体名字_JAVA:获取系统中可用的字体的名字
  7. Python —— 深拷贝和浅拷贝
  8. qq动态页面变方格_腾讯QQ音乐9.7.5正式版更新:「歌手主页个人主页」界面全新改版...
  9. java ajax传递到action_ajax传值到action,后台取不到值。
  10. 「leetcode」202. 快乐数:今天你快乐了么?
  11. java flash_存在漏洞的Java及Flash版本使用者众多
  12. [16]manjaro安装nvidia驱动
  13. 汉字编码计算机,计算机汉字编码,computerbased Chinese codings,音标,读音,翻译,英文例句,英语词典...
  14. C语言房地产销售管理系统,房地产销售管理系统的设计与实现
  15. 转文:KA波段卫星地面关口站异地备份,规避雨天链路中断
  16. 敌营十八年Ⅱ虎胆雄心
  17. 基于sanic打造python web框架
  18. 写时复制(Copy On Write)
  19. 【光通信】常见光模块与光纤收发器说明及作用区别
  20. 客户/供应商主数据批导

热门文章

  1. 雷军语录:写程序有写诗一样的感觉
  2. app安全测试-OWASP ZAP 2.8 使用指南(一):安全测试基础及ZAP下载、安装
  3. 999系统可用性时间表
  4. 职场礼仪_举止_坐姿
  5. EndNote实现章节后插入参考文献的方法
  6. Dict添加元素 - Python
  7. Mysql数据库基础及高阶
  8. Istio系列学习(十四)----Istio策略适配器配置和Env适配器配置
  9. 一款非常nice的国产U盘启动制作工具——Ventoy
  10. Rxjava+retrofit+okHttp+mvp网络请求数据