前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Android 接入udesk SDK实现IM

Android 接入udesk SDK实现IM

作者头像
晨曦_LLW
发布于 2020-09-25 07:06:43
发布于 2020-09-25 07:06:43
98200
代码可运行
举报
运行总次数:0
代码可运行

Demo源码地址

步骤

1.账号注册

2.创建应用获得APP Id和App Key

创建好之后可以获得应用的APP Id和App Key,这两个值是要在Android中配置的

3.下载SDK

点击Android SDK使用教程,进入接口文档的页面

点击GitHub的地址进入

点击androidX 版本地址

下载好之后解压到本地,然后找到UdeskSDKUI,这是这个SDK文件中的一个核心模块,下面还有一个视频的udeskvideo模块,用不到它。

4.创建项目,导入UdeskSDKUI模块并配置

由于我是写一个Demo,所以我的命名是UdeskDemo,项目中的是AndroidX,gradle是5.4.1。项目创建完成之后,复制这个文件夹到你的工程的根目录下

接下来配置这个模块

①配置build.gradle

打开app的build.gradle

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
repositories {
    flatDir {
        dirs project(':UdeskSDKUI').file('libs')
    }
}

implementation project(':UdeskSDKUI')
②配置settings.gradle

打开工程根目录下的settings.gradle文件 在app后面加上,’:UdeskSDKUI’

然后Sync同步一下,这里需要等待一段时间,因为模块中也是有很多依赖库文件需要下载同步配置,同步完成之后,你的模块就会是这样

接下来来配置AndroidManifest.xml文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
	<!-- Required  一些系统要求的权限,如访问网络等-->
    <uses-permission android:name="${applicationId}.permission.JPUSH_MESSAGE" />
    <uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"
        tools:ignore="ProtectedPermissions" />
    <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" />

这时安装一下,确定你之前的步骤没有问题,然后再在MainActivity中进行模块代码的配置

5.配置代码并使用

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
package com.llw.udeskdemo;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.TextView;

import java.util.HashMap;
import java.util.Map;
import java.util.UUID;

import cn.udesk.PreferenceHelper;
import cn.udesk.UdeskSDKManager;
import cn.udesk.config.UdeskConfig;
import udesk.core.UdeskConst;

public class MainActivity extends AppCompatActivity {

    private TextView tv_online_service;

    //替换成你们注册生成的域名
    private String UDESK_DOMAIN = "1593286.s3.udesk.cn";
    //替换成你们生成应用产生的appid
    private String AppId = "9d3a79847ba2c088";
    // 替换成你们在后台生成的密钥
    private String UDESK_SECRETKEY = "6b9ebea7645ad58a21919ac1e98eb745";

    String sdkToken = "";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        tv_online_service = (TextView)findViewById(R.id.tv_online_service);
        //传入注册的域名和密钥
        readAndWriteDomainAndKey();
        //获得Token
        if (TextUtils.isEmpty(sdkToken)) {
            sdkToken = UUID.randomUUID().toString();
        }
        //使用前需要设置的信息:
        UdeskSDKManager.getInstance().initApiKey(getApplicationContext(), UDESK_DOMAIN,
                UDESK_SECRETKEY, AppId);


        tv_online_service.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                Map<String, String> info = new HashMap<String, String>();
                //sdktoken 必填**
                info.put(UdeskConst.UdeskUserInfo.USER_SDK_TOKEN, sdkToken);
                info.put(UdeskConst.UdeskUserInfo.NICK_NAME,"麻花藤");
                info.put(UdeskConst.UdeskUserInfo.CELLPHONE,"15651818750");

                //只设置用户基本信息的配置
                UdeskConfig.Builder builder = new UdeskConfig.Builder();
                builder.setDefualtUserInfo(info);

                //咨询会话
                UdeskSDKManager.getInstance().entryChat(getApplicationContext(), builder.build(), sdkToken);
            }
        });

    }

    private void readAndWriteDomainAndKey() {
        sdkToken = PreferenceHelper.readString(getApplicationContext(), "init_base_name", "sdktoken");

        PreferenceHelper.write(getApplicationContext(), "init_base_name", "sdktoken", sdkToken);
        PreferenceHelper.write(getApplicationContext(), "init_base_name", "domain", UDESK_DOMAIN);
        PreferenceHelper.write(getApplicationContext(), "init_base_name", "appkey", AppId);
        PreferenceHelper.write(getApplicationContext(), "init_base_name", "appid", UDESK_SECRETKEY);
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/04/16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
腾讯云录音文件识别
帮助文档:https://cloud.tencent.com/document/product/1093/38351
算法发
2020/08/04
13.7K0
腾讯云录音文件识别
Android 百度语音合成 (含离线、在线、API合成方式,详细步骤+源码)
  我之前写过百度的语音识别,也写过讯飞的语音识别与合成,而有读者看完后说没有百度的语音合成,想在用百度语音识别的同时使用百度的语音合成。所以就有了这篇文章,我的文章也是区别于其他人的文章,所以我有自己的风格。
晨曦_LLW
2021/05/10
3K0
Android 百度语音合成 (含离线、在线、API合成方式,详细步骤+源码)
腾讯云 实时语音识别介绍及其Android SDK Demo搭建
实时语音识别API地址:https://cloud.tencent.com/document/product/1093/35799
HI hero
2020/04/30
5.6K0
腾讯云 实时语音识别介绍及其Android SDK  Demo搭建
Agora SDK 在Android中的使用(在线视频通话)
一.集成 1.注册账号创建项目 其中最重要的要数 App ID 了 2.下载Agora SDK 二、学会看示例代码(可跳过) 1.整体了解项目结构(1v1的视频通信示例) 以前看一个Andro
Android技术干货分享
2019/05/15
1.6K0
【Unity】QQ登录SDK接入(Unity&Android)
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
bering
2019/12/03
2.9K0
Android 天气APP(四)搭建MVP框架与使用
现在这样固然符合网络请求的标准,结果也得到了,但是这只是一个接口而已,我们用了这么多代码,那假如这个页面上还有好几个接口要请求访问,岂不是多出了很多的重复代码,这一点并不符合现在Android的现状,所以需要封装OKHttp,通过架构或者框架来完成这一步,前期虽然麻烦一些,但是你一旦用习惯了,就停不下来了,接下来我尽量用人话来讲述这个搭建过程。 为了让你有一个清晰的思路,这里创建一个模块,里面搭建MVP框架。
晨曦_LLW
2020/09/25
1K0
Android  天气APP(四)搭建MVP框架与使用
Android调用相机与相册的方法
Android调用相机与相册的方法 操作流程 点击拍摄 效果图 点击相册选择 效果图 拒绝权限的情况 效果图 功能实现 项目配置 1.先在项目根目录的build.gradle的repositories添加: 2.在build.gradle(:app)的dependencies添加: 3.添加提示dialog样式 4.添加底部dialog样式 底部dialog弹出动画(dialog_in_anim.xml) 底部dialog关闭动画(dialog_out_anim.xml) 5.添加权限 6.在Android
是阿超
2022/08/07
2K0
Android调用相机与相册的方法
使用腾讯OCR光学识别名片集成至ZOHO CRM-总结-安卓开发
腾讯OCR光学识别官网介绍:(https://cloud.tencent.com/document/product/866/36214)
no怕不了木
2023/08/07
6630
使用腾讯OCR光学识别名片集成至ZOHO CRM-总结-安卓开发
Android:使用百度地图SDK定位当前具体位置(类似QQ发表说说的选择地点功能)
从百度地图SDK官网下载demo,里面有我们需要的jar包和so文件。 将locSDK_XXX.jar包和 armeabi文件夹以及其中的liblocSDKX.so文件复制粘贴到libs文件夹下。并添加到构建路径。
张拭心 shixinzhang
2022/11/30
1.2K0
Android 检測网络是否连接[通俗易懂]
<uses-permission android:name=”android.permission.ACCESS_NETWORK_STATE”/> <uses-permission android:name=”android.permission.ACCESS_WIFI_STATE”/>
全栈程序员站长
2022/07/07
5500
Android 蓝牙开发(扫描设备、绑定、解绑)
公司最近给我丢了一个蓝牙开发的项目,不了解怎么办呢,那当然是从最基础的开始了,所以这里相当于做笔记了。
晨曦_LLW
2020/09/25
5K0
Android 12 蓝牙适配
  在我的申请下,公司终于购买了一台基于Android12.0的手机,然后我就开心的拿去安装测试了,发现程序崩溃了,于是我这里就写下来,Android12.0的蓝牙适配方法。
晨曦_LLW
2022/04/27
2.2K0
Android 12 蓝牙适配
手把手教你Android端微信支付接入
  在你的package目录下,创建wxapi目录,比如说我使用的demo项目,wxapi就在目录net.sourceforge.simcpux目录下
顾翔
2019/12/12
1.3K0
手把手教你Android端微信支付接入
如何基于 ZEGO SDK 实现 Android 一对一音视频聊天应用
疫情期间,很多线下活动转为线上举行,实时音视频的需求剧增,在视频会议,在线教育,电商购物等众多场景成了“生活新常态”。
音视频开发进阶
2022/10/31
1.3K0
Android 百度文字识别(详细步骤+源码)
  要使用百度文字识别,自然免不了要注册该平台的账号,否则凭什么让你使用,点击百度智能云进入,没有账号的可以先注册账号,注册应该就不用我讲解了吧?这里默认都有账号了,然后登录。
晨曦_LLW
2020/11/24
2.1K0
Android 百度文字识别(详细步骤+源码)
Android 蓝牙开发(扫描设备、绑定、解绑)Kotlin版
之前写了一个蓝牙的小Demo,看的人还是有一些的,也有人私信我说,在学Kotlin,能不能出一版Kotlin的博客讲述这个蓝牙开发,这个想法还是不错的,不过就怕写了没有人看,因为在国内Kotlin是受众群体确实比较少,当然了也是有大的方向在往这边推动的,但是小公司依然不会去用Kotlin,如果你看不惯我这个说法也不要告诉我。我只是把这个博客当成是笔记而已,如果能在写作的时候帮助到别人也是乐意的,不能就自勉吧。
晨曦_LLW
2020/11/18
5.3K0
Android MVVM框架搭建(七)Permission、AlertDialog、拍照和相册选取
  在上一篇博客中完成了新闻详情数据的查看以及用户的注册登录,这篇文章中将对用户的信息进行增加和修改。会使用到文件读写、相机权限、自定义Dialog、相册选取和相机拍照。
晨曦_LLW
2021/12/19
1.6K0
Android MVVM框架搭建(七)Permission、AlertDialog、拍照和相册选取
Android app自动更新总结(已适配9.0)
接下来是工具类,来自github,参考,https://github.com/vondear/RxTool
Android技术干货分享
2019/05/13
2K0
Android 更换头像(拍照、相册选取)
<hr style=" border:solid; width:100px; height:1px;" color=#000000 size=1">
晨曦_LLW
2021/03/05
2.4K0
Android 更换头像(拍照、相册选取)
android微信支付
compile ‘com.tencent.mm.opensdk:wechat-sdk-android-with-mta:+’
tea9
2022/07/16
2.6K0
android微信支付
推荐阅读
相关推荐
腾讯云录音文件识别
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验