集成环信sdk步骤(即时通讯)

步骤:

一,从环信官网注册获得appkey(没有key 无法接入环信服务器)

二, 添加依赖  

 build.gradle(project)

allprojects {
    repositories {
        google()
        jcenter()
    
        maven { url "https://raw.githubusercontent.com/HyphenateInc/Hyphenate-SDK-Android/master/repository" }//环信sdk
    }
}

build.gradle.gradle(App)

api 'com.google.android.gms:play-services-gcm:15.0.1'//环信sdk
api 'com.hyphenate:hyphenate-sdk:3.3.0'//环信sdk

三,AndroidMainifest文件

权限

<!-- Required -->
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.GET_TASKS" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<applivation  android:name="你的项目application"//在里面初始化环信sdk  >
<meta-data
 android:name="EASEMOB_APPKEY"  android:value="申请的appkey" />
<service
    android:name="com.hyphenate.chat.EMChatService"
    android:exported="true" />
<service
    android:name="com.hyphenate.chat.EMJobService"
    android:exported="true"
    android:permission="android.permission.BIND_JOB_SERVICE" />
<!-- 声明SDK所需的receiver -->
<receiver android:name="com.hyphenate.chat.EMMonitorReceiver">
    <intent-filter>
        <action android:name="android.intent.action.PACKAGE_REMOVED" />

        <data android:scheme="package" />
    </intent-filter>
    <!-- 可选filter -->
    <intent-filter>
        <action android:name="android.intent.action.BOOT_COMPLETED" />
        <action android:name="android.intent.action.USER_PRESENT" />
    </intent-filter>
</receiver>
</application>

四,application中初始化(application是程序的入口):定义一个类继承application 并将

android:name="你的项目application"//在里面初始化环信sdk

@Override
public void onCreate() {
    super.onCreate();
    mContext=this;
    //LitePal.initialize(this);//初始化litepal
    //Executor.getInstance().init(this);
    EMOptions options = new EMOptions();
    options.setAcceptInvitationAlways(false);// 默认添加好友时,是不需要验证的,改成需要验证
    options.setAutoAcceptGroupInvitation(false);//是否自动加入群聊
    options.setAcceptInvitationAlways(false);//是否自动加入单聊
    EMClient.getInstance().init(this, options);//初始化
   // Model.getInstance().init(this);//全局监听,放在环信服务器初始化后面不然报空指针问题

}


这样环信sdk就集成完毕了

五,在application中可以做很多事,比如获得全局上下文(context),通过key获得任何一个activity,等等

private static Map<String,Activity> activitys=new HashMap<>();
public static void addDestoryActivity(Activity activity, String string){
   activitys.put(string,activity);
}
public  static  Activity getActivity(String string){
        Set<String> kry2=activitys.keySet();
        Activity activity=new Activity();
        for (String ket2:kry2){
              activitys.get(ket2);
            activity=activitys.get(ket2);
        }
        return activity;

}


  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值