极光im java服务端用户注册

公司项目用的极光im,为了用户在注册完成后就可以用极光im进行沟通,需要在用户在平台注册的时候,也要在极光im上也要进行注册,但是看官方文档确实有点找不着头脑,那只能下载光网提供的SDK自己研究了

极光im服务端SDK下载地址:https://docs.jiguang.cn/jmessage/resources/

所需的jar:

 


    cn.jpush.api
    jmessage-client
    1.1.7


    cn.jpush.api
    jiguang-common
    1.1.0


    com.google.code.gson
    gson
    2.3


    org.slf4j
    slf4j-api
    1.7.7




    org.slf4j
    slf4j-log4j12
    1.7.7


    log4j
    log4j
    1.2.17

下载好了以后我们光看user模块的信息就行了,那么现在把我的研究成果分享给大家,贴代码!

import java.util.ArrayList;
import java.util.List;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import cn.jiguang.common.ClientConfig;
import cn.jiguang.common.ServiceHelper;
import cn.jiguang.common.connection.ApacheHttpClient;
import cn.jiguang.common.resp.APIConnectionException;
import cn.jiguang.common.resp.APIRequestException;
import cn.jiguang.common.resp.ResponseWrapper;
import cn.jmessage.api.JMessageClient;
import cn.jmessage.api.common.model.RegisterInfo;
import cn.jmessage.api.common.model.RegisterPayload;
import cn.jmessage.api.user.UserClient;

/**  
* 

Title: regJiguang

*

Description:

* @author ahk * @date 2018年6月13日 */ public class regJiguang { protected static final Logger LOG = LoggerFactory.getLogger(regJiguang.class); private static final String appKey = "请填写您的appkey"; private static final String masterSecret = "请填写您的masterSecret"; //方法一:利用ApacheHttpClient代替JMessageClient进行用户的注册 public static void regPP(String username,String password) { JMessageClient client = new JMessageClient(appKey, masterSecret); String authCode = ServiceHelper.getBasicAuthorization(appKey, masterSecret); ApacheHttpClient httpClient = new ApacheHttpClient(authCode, null, ClientConfig.getInstance()); client.setHttpClient(httpClient); try { List users = new ArrayList(); RegisterInfo user = RegisterInfo.newBuilder() .setUsername(username) .setPassword(password) .build(); users.add(user); RegisterInfo[] regUsers = new RegisterInfo[users.size()]; String res = client.registerUsers(users.toArray(regUsers)); LOG.info(res); } catch (APIConnectionException e) { LOG.error("连接错误。请稍后重试。 ", e); } catch (APIRequestException e) { LOG.error("JPush服务器的错误响应。请检查并改正。", e); LOG.info("网络状态: " + e.getStatus()); LOG.info("错误信息: " + e.getMessage()); } } //方法二 :利用UserClient来进行用户的注册 public static void regPP1(String username,String password) { UserClient client = new UserClient(appKey, masterSecret); try { List users = new ArrayList(); RegisterInfo user = RegisterInfo.newBuilder() .setUsername(username) .setPassword(password) .build(); users.add(user); RegisterInfo[] regUsers = new RegisterInfo[users.size()]; RegisterPayload payload = RegisterPayload.newBuilder() .addUsers(users.toArray(regUsers)).build(); ResponseWrapper registerUsers = client.registerUsers(payload); System.out.println(registerUsers); // LOG.info(res); } catch (APIConnectionException e) { LOG.error("连接错误。请稍后重试。 ", e); } catch (APIRequestException e) { LOG.error("JPush服务器的错误响应。请检查并改正。", e); LOG.info("网络状态: " + e.getStatus()); LOG.info("错误信息: " + e.getMessage()); } } public static void main(String[] args) { regPP1("testAHK10","test123456"); } }

用方法一和方法二都是可以的,但是我同事反馈方法一有时候不好用,但是我无论用哪个都是可以的,为了兼容性,个人推荐方法二!哦了~
 

你可能感兴趣的:(辅助类)