| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- //
- // HuanXinHelper.m
- // jitao
- //
- // Created by 罗云飞 on 2017/12/22.
- // Copyright © 2017年 罗云飞. All rights reserved.
- //
- #import "HuanXinHelper.h"
- #import "NewInterfaceReplacement.h"
- @implementation HuanXinHelper
- static HuanXinHelper *sharedObj = nil;
- + (instancetype)sharedInstance
- {
- static dispatch_once_t onceToken = 0;
- dispatch_once(&onceToken, ^{
- sharedObj = [[super allocWithZone: NULL] init];
- });
- return sharedObj;
- }
- + (id) allocWithZone:(struct _NSZone *)zone
- {
- return [self sharedInstance];
- }
- - (id) copyWithZone:(NSZone *) zone
- {
- return self;
- }
- - (void)setHuanXinSDK:(UIApplication *)application options:(NSDictionary *)launchOptions
- {
-
- [self registerInitialization:application options:launchOptions];
- }
- - (void)registerInitialization:(UIApplication *)application options:(NSDictionary *)launchOptions{
- EMOptions *options = [EMOptions optionsWithAppkey:HXAPPKey];
- options.apnsCertName = @"";
- [[EMClient sharedClient] initializeSDKWithOptions:options];
-
- //初始化EaseUI
- [[EaseSDKHelper shareHelper] hyphenateApplication:application didFinishLaunchingWithOptions:launchOptions appkey:HXAPPKey apnsCertName:@"" otherConfig:@{kSDKConfigEnableConsoleLogger:[NSNumber numberWithBool:YES]}];
- NSString *username = [NewUtils userDefaultsStringKey:NewHXUsername];
- NSString *password = [NewUtils userDefaultsStringKey:NewHXPassword];
-
- if (username.length==0 || password.length==0) {
- [[NewInterfaceReplacement sharedInstance] replacementLogin];
- return;
- }
- [self LoginHuanXin:username password:password];
-
- }
- - (void)LoginHuanXin:(NSString *)Username password:(NSString *)password {
- NSLog(@"环信账号:%@密码:%@",Username,password);
- BOOL isAutoLogin = [EMClient sharedClient].options.isAutoLogin;
- if (!isAutoLogin) {
- EMError *error = [[EMClient sharedClient] loginWithUsername:Username password:password];
- if (!error)
- {
- [[EMClient sharedClient].options setIsAutoLogin:YES];
- [[NSNotificationCenter defaultCenter]postNotificationName:@"环信登录成功" object:nil];
- }else{
- NSLog(@"%@",@"环信登录失败");
- }
- }
- }
- /*!
- * 当前登录账号在其它设备登录时会接收到该回调
- */
- - (void)didLoginFromOtherDevice {
-
- }
- /*!
- * 退出环信账号
- *
- */
- - (void)exitlogon {
- EMError *error = [[EMClient sharedClient] logout:YES];
- if (!error) {
- NSLog(@"退出环信成功");
- }
- }
- /*!
- * SDK连接服务器的状态变化时会接收到该回调
- *
- * 有以下几种情况,会引起该方法的调用:
- * 1. 登录成功后,手机无法上网时,会调用该回调
- * 2. 登录成功后,网络状态变化时,会调用该回调
- *
- * @param aConnectionState 当前状态
- */
- - (void)connectionStateDidChange:(EMConnectionState)aConnectionState {
- NSLog(@"%o",aConnectionState);
- }
- /*!
- * 自动登录返回结果
- *
- * @param error 错误信息
- */
- - (void)autoLoginDidCompleteWithError:(EMError *)error {
- NSLog(@"%@",error);
- }
- // 应用程序进入后台
- - (void)applicationDidEnterBackground:(UIApplication *)application {
- [[EMClient sharedClient] applicationDidEnterBackground:application];
- }
- // 应用程序进入前台
- - (void)applicationWillEnterForeground:(UIApplication *)application {
- [[EMClient sharedClient] applicationWillEnterForeground:application];
-
- }
- @end
|