EaseUI

EaseUI

1
评论

关于Android Studio如何正确集成环信3.1.5 SDK EaseUI

LoneWolf 发表了文章 • 76 次浏览 • 2017-01-05 16:37 • 来自相关话题

1 下载sdk3.1.5后,在examples下找到easeui



2 将build.gradle删除(这一点非常重要,因为没有删除这个文件,后面出现的冲突浪费了我三四天时间)

3 在examples-ChatDemoUI3.0找到libs

4 在你的 (注意是主modules) 主modules-main下创建jniLibs文件夹,把demo中的jar包全部父之过去

5 之后就是导入easeui了(注意:确认build.gradle已经删除)



接下来是添加依赖,选择菜单栏上Project Structure,找到自己的工程,在Dependencies找到绿色的“+”,选择第三个“Module dependency”

6 导入easeui后发现他自动生成的build.gradle,这时才是我们需要的,将easeui的v4版本提升到23

compile'com.android.support:support-v4:23.+'
7 这时应该编译通过了,有些机子运行发现以下问题

java.lang.UnsatisfiedLinkError: com.android.tools.fd.runtime.IncrementalClassLoader$DelegateClassLoader[DexPathList[[dex file "/data/data/com.xxx.xxx/files/instant-run/dex/slice-support-annotations-24.1.0_ce9c5697cabea4565e89d9bb7a81deef74f26296-classes.dex", dex file "/data/data/com.xxx

如果遇到UnsatisfiedLinkError的问题,则在easeUI依赖库-jniLibs创建armeabi-v7a,然后将armeabi的.so文件拷贝一份进去即可。

之后你就可以根据你的需要进行自定义了,可以参考ChatDemoUI3.0,里面的逻辑很齐全了



这是导入easeui的正确方式,是我用几天换来的宝贵经验,希望能帮到大家,多多打赏哈 查看全部
1 下载sdk3.1.5后,在examples下找到easeui



2 将build.gradle删除(这一点非常重要,因为没有删除这个文件,后面出现的冲突浪费了我三四天时间)

3 在examples-ChatDemoUI3.0找到libs

4 在你的 (注意是主modules) 主modules-main下创建jniLibs文件夹,把demo中的jar包全部父之过去

5 之后就是导入easeui了(注意:确认build.gradle已经删除)



接下来是添加依赖,选择菜单栏上Project Structure,找到自己的工程,在Dependencies找到绿色的“+”,选择第三个“Module dependency”

6 导入easeui后发现他自动生成的build.gradle,这时才是我们需要的,将easeui的v4版本提升到23

compile'com.android.support:support-v4:23.+'
7 这时应该编译通过了,有些机子运行发现以下问题

java.lang.UnsatisfiedLinkError: com.android.tools.fd.runtime.IncrementalClassLoader$DelegateClassLoader[DexPathList[[dex file "/data/data/com.xxx.xxx/files/instant-run/dex/slice-support-annotations-24.1.0_ce9c5697cabea4565e89d9bb7a81deef74f26296-classes.dex", dex file "/data/data/com.xxx

如果遇到UnsatisfiedLinkError的问题,则在easeUI依赖库-jniLibs创建armeabi-v7a,然后将armeabi的.so文件拷贝一份进去即可。

之后你就可以根据你的需要进行自定义了,可以参考ChatDemoUI3.0,里面的逻辑很齐全了



这是导入easeui的正确方式,是我用几天换来的宝贵经验,希望能帮到大家,多多打赏哈
1
回复
5
回复

聊天界面多刷新几次就会蹦 环信_iOS EaseUI iOS环信UI集成 环信 iOS集成 iOS环信聊天

环信沈冲 回复了问题 • 3 人关注 • 217 次浏览 • 2016-11-27 20:02 • 来自相关话题

3
回复

如何把联系人查找的结果的视图改为其他颜色。。 环信_iOS iOS环信导航条 EaseUI iOS环信UI集成 iOS 好友

mazhihua 回复了问题 • 2 人关注 • 172 次浏览 • 2016-11-24 16:11 • 来自相关话题

3
回复

iOS无法收到推送,官网文档不够详细 EaseUI 环信_iOS

一等到天幻 回复了问题 • 3 人关注 • 547 次浏览 • 2016-11-20 11:25 • 来自相关话题

89
回复

【有奖调查】环信EaseUI使用调查 EaseUI 社区活动 有奖调查

HI!RAVY 回复了问题 • 78 人关注 • 10205 次浏览 • 2016-11-13 19:12 • 来自相关话题

3
回复

聊天页面的头像昵称有时显示有时不显示 头像 好友 EaseUI 环信_iOS

BluesACE 回复了问题 • 4 人关注 • 249 次浏览 • 2016-11-04 17:29 • 来自相关话题

2
最佳

ios如何添加Emoji哇 SDK emoji 环信_iOS iOS EaseUI

beyond 回复了问题 • 2 人关注 • 236 次浏览 • 2016-11-03 18:58 • 来自相关话题

1
回复

Xcode 8 下真机发送位置无反应 位置共享 定位 环信_iOS iOS EaseUI

zl 回复了问题 • 2 人关注 • 216 次浏览 • 2016-11-03 18:08 • 来自相关话题

1
回复
1
回复

运行app直接报错,导入的是EaseUI包 EaseUI

Wxin 回复了问题 • 2 人关注 • 351 次浏览 • 2016-10-17 17:34 • 来自相关话题

1
回复

导入EaseUi v4包保错 EaseUI

Wxin 回复了问题 • 2 人关注 • 249 次浏览 • 2016-10-14 18:29 • 来自相关话题

1
回复

与海外用户视频&语音聊天通话质量很差,请问有解决办法吗 环信_iOS iOS EaseUI

环信沈冲 回复了问题 • 2 人关注 • 266 次浏览 • 2016-10-10 18:36 • 来自相关话题

1
回复

iOS键盘的颜色如何改变 环信_iOS iOS环信聊天 环信 iOS集成 EaseUI iOS环信UI集成

mazhihua 回复了问题 • 2 人关注 • 431 次浏览 • 2016-09-30 17:43 • 来自相关话题

2
回复

iOS环信头像和昵称 iOS环信导航条 环信_iOS iOS 头像和 昵称的问题 EaseUI

su酥酥 回复了问题 • 2 人关注 • 291 次浏览 • 2016-09-27 18:19 • 来自相关话题

1
评论

【环信集成笔记】进阶篇-EaseUI集成以及会话列表开发 EaseUI 环信集成笔记

beyond 发表了文章 • 708 次浏览 • 2016-09-27 10:41 • 来自相关话题

有人说环信需要服务器和iOS端配合,其实可以两种方式:

1.全有iOS端和环信交互。2.让服务器替我们保存环信密码。

先不说方式,先教大家如何集成。环信里有一个自带已经弄好的EaseUI,如果你对页面的要求不是很大,那就用环信自带的EaseUI开发。我使用的就是环信的EaseUI。为了不影响项目,你先导入需要的系统框架。我使用的是即时通讯V2版本。

集成准备前请看他们的官网文档介绍。http://docs.easemob.com/start/ ... mport

是即时通讯V3,请按照他去添加对应的库!没有安全感的可以全部添加!只要你不限工程大,麻烦就可以。

添加完成以后。下载他的SDK,有几种文件需要你拖进来。1.EaseUIResource.bundle

2.gifimage(包含文件:EMGifImage.h以及.m)

3.EaseMobSDK

4.EaseUI(包括子目录:include,lib,resources*请注意里面不是图片是库,XMPP框架。 )

5.Resource(环信的图片文件夹)

6.ChatViewController(你可以用他们示范demo里拖,这个类就是对话类)

7.CystomizableCell

8.PrefixHeader.pch

9.Localizable.strings如果还是少了什么东西不知道怎么加,请加我QQ:1119718338,我给你发送所有需要的文件,前提请注意加好友时候留言清楚。
如果你前面有一个会话列表页面,例如下图:




如果你也有一个消息页面的话,如果没有什么太多内容,我建议放弃你自己自定义的TableViewCell,因为EaseUI 里有已经写好的消息页面:EaseConversationListViewController

这个页面不用改动太多。如果你发现这个页面为什么不用登录环信账号,环信是这样的:你在AppDelegate登录。

登录的demo为:[[EaseMob sharedInstance].chatManager asyncLoginWithUsername:@“用户的环信账号” password:@“用户的环信密码” completion:^(NSDictionary *loginInfo, EMError *error) {

NSLog(@"error====%@",error);

if (!error)

{

NSLog(@"登录成功");

NSLog(@"===%@",loginInfo);

//获取数据库中数据

[[EaseMob sharedInstance].chatManager loadDataFromDatabase];

}

} onQueue:nil];
当然有登录就有注册

[[EaseMob sharedInstance].chatManager asyncRegisterNewAccount:phone.text password:password2.text withCompletion:^(NSString *username, NSString *password, EMError *error) {

NSLog(@"error====%@",error);

if (!error)

{

NSLog(@"注册成功");

NSLog(@"===%@",loginInfo);

}

} onQueue:nil];

1.只用iOS和环信交互:在你app注册会员的时候,注册成功获得返回值,正确的返回值内去注册环信账号,而环信账号就是用户注册你app的账号,密码需要写死,例如:123456,那么无论谁注册,传给环信的密码都是123456。这样方便登录。如果环信返回给你是注册成功,那么你需要在成功里创建NSUserDeafults存储你的环信账号,密码就不用存了。并且调用环信登录方法。如果不在AppDelegate里写登录,你的APP如果退出了,下次打开就没用了,所以必须时时刻刻登录。所以你需要在AppDelegate登录,账号就是你本地存储的账号。密码还是死的。如果正常流程来说就是:

1.注册自己APP账号-成功-注册环信账号,密码为死的-成功-登录环信账号。

2.登录自己APP账号-成功-登录环信

3.AppDelegate存储账号。


2.让iOS,服务器,环信交互:通过上面的那种方式,跟服务器唯一交互的就是密码,你需要在用户注册你自己产品的时候,密码也注册环信。注册成功,将密码post给服务器,登录的时候成功,服务器不光返回error,msg,还要加一个环信的password,这样你拿到password 可以再进行登录。当然注册的时候Phone和Password需都需要存储,方便在AppDelegate入口类登录。

1.注册自己APP账号-成功-注册环信账号,密码为注册APP的密码-成功-Post密码给服务器-成功-登录环信账号。

2.登录自己APP账号-成功-拿到服务器返回的Password,登录环信账号-成功。

3.AppDelegate存储账号和密码

除了上面两种方式,还有一种就是环信有一个会记录的方法,除了注销会一直存在。怎么简单怎么来。
 
OK,注册成功,我们继续讨论:EaseConversationListViewController

如果你的页面换成了EaseConversationListViewController,那么你不需要做任何操作都可以获取到最新数据,但是你需要点击进入会话页面。




ChatViewController 就是你的会话列表页,关于ChatViewController * chatVc = [[ChatViewController alloc]initWithConversationChatter:model.title conversationType:eConversationTypeChat];

1.model.title 这个会话列表的用户名,你也可以写死。

2.eConversationTypeChat,枚举,这是单人会话,还有群聊等等。

有了这个就可以传到会话列表页了。

会话列表就不多说了,没有这个文件我直接发给你好了。

对了有人会出现这种情况,如下图:





是否发现重复消息。[self tableViewDidTriggerHeaderRefresh]; 检查一下这个方法是不是在chatViewController 和EaseMessageViewCOntroller 的ViewDidLoad 里面都调用了,看如果都有,随便删除一个这个方法。就ok了!
 
关于头像昵称如何能做成活的,思路是:环信有一个方法,可以获取消息列表的信息。




这个方法就在你的根视图里拿出来。能获取到所有消息的环信的账号,如果你们注册的环信账号是手机号的。第一次发请求的话给服务器依次发送这个手机号,获取他的昵称和头像,然后存到本地。下次再次发请求的时候之前获取一下这个信息,有的话直接拿,没有的话就发送请求。
 
现在我在研究如何改变会话列表的名字和头像,因为有些产品的需要,不能展示账号或者手机号,所以如果你还有不懂得地方你加我好友QQ:1119718338,欢迎一起交流。当然如果您觉得对您有帮助,请点赞或打赏!谢谢!
  查看全部
有人说环信需要服务器和iOS端配合,其实可以两种方式:

1.全有iOS端和环信交互。2.让服务器替我们保存环信密码。

先不说方式,先教大家如何集成。环信里有一个自带已经弄好的EaseUI,如果你对页面的要求不是很大,那就用环信自带的EaseUI开发。我使用的就是环信的EaseUI。为了不影响项目,你先导入需要的系统框架。我使用的是即时通讯V2版本。

集成准备前请看他们的官网文档介绍。http://docs.easemob.com/start/ ... mport

是即时通讯V3,请按照他去添加对应的库!没有安全感的可以全部添加!只要你不限工程大,麻烦就可以。

添加完成以后。下载他的SDK,有几种文件需要你拖进来。
1.EaseUIResource.bundle

2.gifimage(包含文件:EMGifImage.h以及.m)

3.EaseMobSDK

4.EaseUI(包括子目录:include,lib,resources*请注意里面不是图片是库,XMPP框架。 )

5.Resource(环信的图片文件夹)

6.ChatViewController(你可以用他们示范demo里拖,这个类就是对话类)

7.CystomizableCell

8.PrefixHeader.pch

9.Localizable.strings
如果还是少了什么东西不知道怎么加,请加我QQ:1119718338,我给你发送所有需要的文件,前提请注意加好友时候留言清楚。
如果你前面有一个会话列表页面,例如下图:
1240.png

如果你也有一个消息页面的话,如果没有什么太多内容,我建议放弃你自己自定义的TableViewCell,因为EaseUI 里有已经写好的消息页面:EaseConversationListViewController

这个页面不用改动太多。如果你发现这个页面为什么不用登录环信账号,环信是这样的:你在AppDelegate登录。

登录的demo为:
[[EaseMob sharedInstance].chatManager asyncLoginWithUsername:@“用户的环信账号” password:@“用户的环信密码” completion:^(NSDictionary *loginInfo, EMError *error) {

NSLog(@"error====%@",error);

if (!error)

{

NSLog(@"登录成功");

NSLog(@"===%@",loginInfo);

//获取数据库中数据

[[EaseMob sharedInstance].chatManager loadDataFromDatabase];

}

} onQueue:nil];
当然有登录就有注册

[[EaseMob sharedInstance].chatManager asyncRegisterNewAccount:phone.text password:password2.text withCompletion:^(NSString *username, NSString *password, EMError *error) {

NSLog(@"error====%@",error);

if (!error)

{

NSLog(@"注册成功");

NSLog(@"===%@",loginInfo);

}

} onQueue:nil];


1.只用iOS和环信交互:在你app注册会员的时候,注册成功获得返回值,正确的返回值内去注册环信账号,而环信账号就是用户注册你app的账号,密码需要写死,例如:123456,那么无论谁注册,传给环信的密码都是123456。这样方便登录。如果环信返回给你是注册成功,那么你需要在成功里创建NSUserDeafults存储你的环信账号,密码就不用存了。并且调用环信登录方法。如果不在AppDelegate里写登录,你的APP如果退出了,下次打开就没用了,所以必须时时刻刻登录。所以你需要在AppDelegate登录,账号就是你本地存储的账号。密码还是死的。如果正常流程来说就是:

1.注册自己APP账号-成功-注册环信账号,密码为死的-成功-登录环信账号。

2.登录自己APP账号-成功-登录环信

3.AppDelegate存储账号。



2.让iOS,服务器,环信交互:通过上面的那种方式,跟服务器唯一交互的就是密码,你需要在用户注册你自己产品的时候,密码也注册环信。注册成功,将密码post给服务器,登录的时候成功,服务器不光返回error,msg,还要加一个环信的password,这样你拿到password 可以再进行登录。当然注册的时候Phone和Password需都需要存储,方便在AppDelegate入口类登录。

1.注册自己APP账号-成功-注册环信账号,密码为注册APP的密码-成功-Post密码给服务器-成功-登录环信账号。

2.登录自己APP账号-成功-拿到服务器返回的Password,登录环信账号-成功。

3.AppDelegate存储账号和密码


除了上面两种方式,还有一种就是环信有一个会记录的方法,除了注销会一直存在。怎么简单怎么来。
 
OK,注册成功,我们继续讨论:EaseConversationListViewController

如果你的页面换成了EaseConversationListViewController,那么你不需要做任何操作都可以获取到最新数据,但是你需要点击进入会话页面。
1039815-3ecd18bb8205386e.jpg

ChatViewController 就是你的会话列表页,关于ChatViewController * chatVc = [[ChatViewController alloc]initWithConversationChatter:model.title conversationType:eConversationTypeChat];

1.model.title 这个会话列表的用户名,你也可以写死。

2.eConversationTypeChat,枚举,这是单人会话,还有群聊等等。


有了这个就可以传到会话列表页了。

会话列表就不多说了,没有这个文件我直接发给你好了。

对了有人会出现这种情况,如下图:

1039815-44d6a06e34d36547.png

是否发现重复消息。[self tableViewDidTriggerHeaderRefresh]; 检查一下这个方法是不是在chatViewController 和EaseMessageViewCOntroller 的ViewDidLoad 里面都调用了,看如果都有,随便删除一个这个方法。就ok了!
 
关于头像昵称如何能做成活的,思路是:环信有一个方法,可以获取消息列表的信息。
1039815-451bc4398ac8a957.png

这个方法就在你的根视图里拿出来。能获取到所有消息的环信的账号,如果你们注册的环信账号是手机号的。第一次发请求的话给服务器依次发送这个手机号,获取他的昵称和头像,然后存到本地。下次再次发请求的时候之前获取一下这个信息,有的话直接拿,没有的话就发送请求。
 
现在我在研究如何改变会话列表的名字和头像,因为有些产品的需要,不能展示账号或者手机号,所以如果你还有不懂得地方你加我好友QQ:1119718338,欢迎一起交流。当然如果您觉得对您有帮助,请点赞或打赏!谢谢!
 
2
最佳

iOS集成EaseUI报错 EaseUI

十一岁的加重 回复了问题 • 3 人关注 • 880 次浏览 • 2016-09-26 18:45 • 来自相关话题

2
回复
1
回复

求环信iOS群聊的demoqi 群聊 easeui 集成 iOS 环信_iOS EaseUI

zhangyb 回复了问题 • 2 人关注 • 317 次浏览 • 2016-09-13 19:06 • 来自相关话题

1
回复

打包出现library not found for -lMasonry easeUi 打包 环信_iOS iOS EaseUI

回复

Swift 回复了问题 • 1 人关注 • 523 次浏览 • 2016-09-11 22:50 • 来自相关话题

1
回复

关于EaseUI3.0集成报错(iOS)的疑问 EaseUI3.1.0集成问题 EaseUI easeui 集成

环信沈冲 回复了问题 • 2 人关注 • 360 次浏览 • 2016-09-05 19:25 • 来自相关话题

1
评论

Duplicate interface definition for class 'EaseUI'解决办法 iOS EaseUI swift

※樂※ 发表了文章 • 454 次浏览 • 2016-09-05 12:44 • 来自相关话题

今天项目迁移时发现报 Duplicate interface definition for class 'EaseUI' 错误,然后重新修改了EaseUI-Prefix的指定路径就好了!
今天项目迁移时发现报 Duplicate interface definition for class 'EaseUI' 错误,然后重新修改了EaseUI-Prefix的指定路径就好了!
2
回复

iOS EaseUI 无法发送位置信息,一直卡在这里 EaseUISimpleDemo使用 环信_iOS EaseUI iOS

Swift 回复了问题 • 2 人关注 • 483 次浏览 • 2016-09-04 06:49 • 来自相关话题

2
最佳

根据官方网站上的方法集成EaseUI的时候关于EaseSDKHelper的问题 demo EaseUI iOS

Shawnre6 回复了问题 • 2 人关注 • 456 次浏览 • 2016-09-03 04:35 • 来自相关话题

4
回复

求教:iOS无法收到推送,搞定后双手奉上50块小红包 推送图标 推送证书 推送 EaseUI 环信_iOS

Swift 回复了问题 • 4 人关注 • 1808 次浏览 • 2016-09-02 09:07 • 来自相关话题

条新动态, 点击查看
环信沈冲

环信沈冲 回答了问题 • 2015-12-02 12:26 • 1 个回复 不感兴趣

iOS 把EaseUI导入自己的工程报错,求解

赞同来自:

MJRefresh冲突了,如果自己的项目中有使用这个三方,将我们的删去即可,如果删掉还不行,建议使用2.0demo的UI集成。
MJRefresh冲突了,如果自己的项目中有使用这个三方,将我们的删去即可,如果删掉还不行,建议使用2.0demo的UI集成。
十一岁的加重

十一岁的加重 回答了问题 • 2016-09-26 18:45 • 2 个回复 不感兴趣

iOS集成EaseUI报错

赞同来自:

 duplicate文件重复,看看是不是MJRefresh或者MBProgressHUD,
 
你在Pod里已经集成了,根据自己需要删除SDK里的或者Pod里的,我个人是这样解决的
 duplicate文件重复,看看是不是MJRefresh或者MBProgressHUD,
 
你在Pod里已经集成了,根据自己需要删除SDK里的或者Pod里的,我个人是这样解决的
zl

zl 回答了问题 • 2016-07-05 18:44 • 4 个回复 不感兴趣

会话列表具体怎么集成啊?

赞同来自:

机器人的都删掉。ConversationListViewController继承EaseConversationListViewController  ,viewdidload调用    [self tableViewDidTriggerHeaderRefre... 显示全部 »
机器人的都删掉。ConversationListViewController继承EaseConversationListViewController  ,viewdidload调用    [self tableViewDidTriggerHeaderRefresh];
[[EaseSDKHelper shareHelper] hyphenateApplication:application
                    didFinishLaunchingWithOptions:launchOptions
    ... 显示全部 »
[[EaseSDKHelper shareHelper] hyphenateApplication:application
                    didFinishLaunchingWithOptions:launchOptions
                                           appkey:appkey
                                     apnsCertName:apnsCertName
                                      otherConfig:@{kSDKConfigEnableConsoleLogger:[NSNumber numberWithBool:YES]}];
Swift

Swift 回答了问题 • 2016-11-03 16:46 • 2 个回复 不感兴趣

ios如何添加Emoji哇

赞同来自:

已解决EaseMessageViewController在的viewdidload方法的
第一行添加:[self setupEmotion];
最后一行添加: EaseEmotionManager *manager= [[EaseEmotionManager ... 显示全部 »
已解决EaseMessageViewController在的viewdidload方法的
第一行添加:[self setupEmotion];
最后一行添加: EaseEmotionManager *manager= [[EaseEmotionManager alloc] initWithType:EMEmotionDefault emotionRow:3 emotionCol:7 emotions:[EaseEmoji allEmoji]]; [self.faceView setEmotionManagers:@[manager]];
然后神奇的出现了emoji
5
回复

聊天界面多刷新几次就会蹦 环信_iOS EaseUI iOS环信UI集成 环信 iOS集成 iOS环信聊天

回复

环信沈冲 回复了问题 • 3 人关注 • 217 次浏览 • 2016-11-27 20:02 • 来自相关话题

3
回复

如何把联系人查找的结果的视图改为其他颜色。。 环信_iOS iOS环信导航条 EaseUI iOS环信UI集成 iOS 好友

回复

mazhihua 回复了问题 • 2 人关注 • 172 次浏览 • 2016-11-24 16:11 • 来自相关话题

3
回复

iOS无法收到推送,官网文档不够详细 EaseUI 环信_iOS

回复

一等到天幻 回复了问题 • 3 人关注 • 547 次浏览 • 2016-11-20 11:25 • 来自相关话题

89
回复

【有奖调查】环信EaseUI使用调查 EaseUI 社区活动 有奖调查

回复

HI!RAVY 回复了问题 • 78 人关注 • 10205 次浏览 • 2016-11-13 19:12 • 来自相关话题

3
回复

聊天页面的头像昵称有时显示有时不显示 头像 好友 EaseUI 环信_iOS

回复

BluesACE 回复了问题 • 4 人关注 • 249 次浏览 • 2016-11-04 17:29 • 来自相关话题

2
最佳

ios如何添加Emoji哇 SDK emoji 环信_iOS iOS EaseUI

回复

beyond 回复了问题 • 2 人关注 • 236 次浏览 • 2016-11-03 18:58 • 来自相关话题

1
回复

Xcode 8 下真机发送位置无反应 位置共享 定位 环信_iOS iOS EaseUI

回复

zl 回复了问题 • 2 人关注 • 216 次浏览 • 2016-11-03 18:08 • 来自相关话题

1
回复

运行app直接报错,导入的是EaseUI包 EaseUI

回复

Wxin 回复了问题 • 2 人关注 • 351 次浏览 • 2016-10-17 17:34 • 来自相关话题

1
回复

导入EaseUi v4包保错 EaseUI

回复

Wxin 回复了问题 • 2 人关注 • 249 次浏览 • 2016-10-14 18:29 • 来自相关话题

1
回复

与海外用户视频&语音聊天通话质量很差,请问有解决办法吗 环信_iOS iOS EaseUI

回复

环信沈冲 回复了问题 • 2 人关注 • 266 次浏览 • 2016-10-10 18:36 • 来自相关话题

1
回复

iOS键盘的颜色如何改变 环信_iOS iOS环信聊天 环信 iOS集成 EaseUI iOS环信UI集成

回复

mazhihua 回复了问题 • 2 人关注 • 431 次浏览 • 2016-09-30 17:43 • 来自相关话题

2
回复

iOS环信头像和昵称 iOS环信导航条 环信_iOS iOS 头像和 昵称的问题 EaseUI

回复

su酥酥 回复了问题 • 2 人关注 • 291 次浏览 • 2016-09-27 18:19 • 来自相关话题

2
最佳

iOS集成EaseUI报错 EaseUI

回复

十一岁的加重 回复了问题 • 3 人关注 • 880 次浏览 • 2016-09-26 18:45 • 来自相关话题

1
回复

求环信iOS群聊的demoqi 群聊 easeui 集成 iOS 环信_iOS EaseUI

回复

zhangyb 回复了问题 • 2 人关注 • 317 次浏览 • 2016-09-13 19:06 • 来自相关话题

1
回复

打包出现library not found for -lMasonry easeUi 打包 环信_iOS iOS EaseUI

回复

Swift 回复了问题 • 1 人关注 • 523 次浏览 • 2016-09-11 22:50 • 来自相关话题

1
回复

关于EaseUI3.0集成报错(iOS)的疑问 EaseUI3.1.0集成问题 EaseUI easeui 集成

回复

环信沈冲 回复了问题 • 2 人关注 • 360 次浏览 • 2016-09-05 19:25 • 来自相关话题

2
回复

iOS EaseUI 无法发送位置信息,一直卡在这里 EaseUISimpleDemo使用 环信_iOS EaseUI iOS

回复

Swift 回复了问题 • 2 人关注 • 483 次浏览 • 2016-09-04 06:49 • 来自相关话题

2
最佳

根据官方网站上的方法集成EaseUI的时候关于EaseSDKHelper的问题 demo EaseUI iOS

回复

Shawnre6 回复了问题 • 2 人关注 • 456 次浏览 • 2016-09-03 04:35 • 来自相关话题

4
回复

求教:iOS无法收到推送,搞定后双手奉上50块小红包 推送图标 推送证书 推送 EaseUI 环信_iOS

回复

Swift 回复了问题 • 4 人关注 • 1808 次浏览 • 2016-09-02 09:07 • 来自相关话题

2
回复

(亲测试保证有效!!!!)EaseUI集成报错的解决方案 EaseUI3.0 easeui 集成 EaseUI

回复

blackmatch 回复了问题 • 2 人关注 • 580 次浏览 • 2016-08-31 13:19 • 来自相关话题

2
回复

easeui和RecyclerView的相爱相杀 EaseUI RecyclerView

回复

Gorgeous 回复了问题 • 4 人关注 • 509 次浏览 • 2016-08-31 11:07 • 来自相关话题

1
回复

集成了环信推送打包时要在Capailities那里打钩吗 环信_iOS EaseUI iOS

回复

donghai 回复了问题 • 2 人关注 • 442 次浏览 • 2016-08-26 18:55 • 来自相关话题

1
评论

关于Android Studio如何正确集成环信3.1.5 SDK EaseUI

LoneWolf 发表了文章 • 76 次浏览 • 2017-01-05 16:37 • 来自相关话题

1 下载sdk3.1.5后,在examples下找到easeui



2 将build.gradle删除(这一点非常重要,因为没有删除这个文件,后面出现的冲突浪费了我三四天时间)

3 在examples-ChatDemoUI3.0找到libs

4 在你的 (注意是主modules) 主modules-main下创建jniLibs文件夹,把demo中的jar包全部父之过去

5 之后就是导入easeui了(注意:确认build.gradle已经删除)



接下来是添加依赖,选择菜单栏上Project Structure,找到自己的工程,在Dependencies找到绿色的“+”,选择第三个“Module dependency”

6 导入easeui后发现他自动生成的build.gradle,这时才是我们需要的,将easeui的v4版本提升到23

compile'com.android.support:support-v4:23.+'
7 这时应该编译通过了,有些机子运行发现以下问题

java.lang.UnsatisfiedLinkError: com.android.tools.fd.runtime.IncrementalClassLoader$DelegateClassLoader[DexPathList[[dex file "/data/data/com.xxx.xxx/files/instant-run/dex/slice-support-annotations-24.1.0_ce9c5697cabea4565e89d9bb7a81deef74f26296-classes.dex", dex file "/data/data/com.xxx

如果遇到UnsatisfiedLinkError的问题,则在easeUI依赖库-jniLibs创建armeabi-v7a,然后将armeabi的.so文件拷贝一份进去即可。

之后你就可以根据你的需要进行自定义了,可以参考ChatDemoUI3.0,里面的逻辑很齐全了



这是导入easeui的正确方式,是我用几天换来的宝贵经验,希望能帮到大家,多多打赏哈 查看全部
1 下载sdk3.1.5后,在examples下找到easeui



2 将build.gradle删除(这一点非常重要,因为没有删除这个文件,后面出现的冲突浪费了我三四天时间)

3 在examples-ChatDemoUI3.0找到libs

4 在你的 (注意是主modules) 主modules-main下创建jniLibs文件夹,把demo中的jar包全部父之过去

5 之后就是导入easeui了(注意:确认build.gradle已经删除)



接下来是添加依赖,选择菜单栏上Project Structure,找到自己的工程,在Dependencies找到绿色的“+”,选择第三个“Module dependency”

6 导入easeui后发现他自动生成的build.gradle,这时才是我们需要的,将easeui的v4版本提升到23

compile'com.android.support:support-v4:23.+'
7 这时应该编译通过了,有些机子运行发现以下问题

java.lang.UnsatisfiedLinkError: com.android.tools.fd.runtime.IncrementalClassLoader$DelegateClassLoader[DexPathList[[dex file "/data/data/com.xxx.xxx/files/instant-run/dex/slice-support-annotations-24.1.0_ce9c5697cabea4565e89d9bb7a81deef74f26296-classes.dex", dex file "/data/data/com.xxx

如果遇到UnsatisfiedLinkError的问题,则在easeUI依赖库-jniLibs创建armeabi-v7a,然后将armeabi的.so文件拷贝一份进去即可。

之后你就可以根据你的需要进行自定义了,可以参考ChatDemoUI3.0,里面的逻辑很齐全了



这是导入easeui的正确方式,是我用几天换来的宝贵经验,希望能帮到大家,多多打赏哈
1
评论

【环信集成笔记】进阶篇-EaseUI集成以及会话列表开发 EaseUI 环信集成笔记

beyond 发表了文章 • 708 次浏览 • 2016-09-27 10:41 • 来自相关话题

有人说环信需要服务器和iOS端配合,其实可以两种方式:

1.全有iOS端和环信交互。2.让服务器替我们保存环信密码。

先不说方式,先教大家如何集成。环信里有一个自带已经弄好的EaseUI,如果你对页面的要求不是很大,那就用环信自带的EaseUI开发。我使用的就是环信的EaseUI。为了不影响项目,你先导入需要的系统框架。我使用的是即时通讯V2版本。

集成准备前请看他们的官网文档介绍。http://docs.easemob.com/start/ ... mport

是即时通讯V3,请按照他去添加对应的库!没有安全感的可以全部添加!只要你不限工程大,麻烦就可以。

添加完成以后。下载他的SDK,有几种文件需要你拖进来。1.EaseUIResource.bundle

2.gifimage(包含文件:EMGifImage.h以及.m)

3.EaseMobSDK

4.EaseUI(包括子目录:include,lib,resources*请注意里面不是图片是库,XMPP框架。 )

5.Resource(环信的图片文件夹)

6.ChatViewController(你可以用他们示范demo里拖,这个类就是对话类)

7.CystomizableCell

8.PrefixHeader.pch

9.Localizable.strings如果还是少了什么东西不知道怎么加,请加我QQ:1119718338,我给你发送所有需要的文件,前提请注意加好友时候留言清楚。
如果你前面有一个会话列表页面,例如下图:




如果你也有一个消息页面的话,如果没有什么太多内容,我建议放弃你自己自定义的TableViewCell,因为EaseUI 里有已经写好的消息页面:EaseConversationListViewController

这个页面不用改动太多。如果你发现这个页面为什么不用登录环信账号,环信是这样的:你在AppDelegate登录。

登录的demo为:[[EaseMob sharedInstance].chatManager asyncLoginWithUsername:@“用户的环信账号” password:@“用户的环信密码” completion:^(NSDictionary *loginInfo, EMError *error) {

NSLog(@"error====%@",error);

if (!error)

{

NSLog(@"登录成功");

NSLog(@"===%@",loginInfo);

//获取数据库中数据

[[EaseMob sharedInstance].chatManager loadDataFromDatabase];

}

} onQueue:nil];
当然有登录就有注册

[[EaseMob sharedInstance].chatManager asyncRegisterNewAccount:phone.text password:password2.text withCompletion:^(NSString *username, NSString *password, EMError *error) {

NSLog(@"error====%@",error);

if (!error)

{

NSLog(@"注册成功");

NSLog(@"===%@",loginInfo);

}

} onQueue:nil];

1.只用iOS和环信交互:在你app注册会员的时候,注册成功获得返回值,正确的返回值内去注册环信账号,而环信账号就是用户注册你app的账号,密码需要写死,例如:123456,那么无论谁注册,传给环信的密码都是123456。这样方便登录。如果环信返回给你是注册成功,那么你需要在成功里创建NSUserDeafults存储你的环信账号,密码就不用存了。并且调用环信登录方法。如果不在AppDelegate里写登录,你的APP如果退出了,下次打开就没用了,所以必须时时刻刻登录。所以你需要在AppDelegate登录,账号就是你本地存储的账号。密码还是死的。如果正常流程来说就是:

1.注册自己APP账号-成功-注册环信账号,密码为死的-成功-登录环信账号。

2.登录自己APP账号-成功-登录环信

3.AppDelegate存储账号。


2.让iOS,服务器,环信交互:通过上面的那种方式,跟服务器唯一交互的就是密码,你需要在用户注册你自己产品的时候,密码也注册环信。注册成功,将密码post给服务器,登录的时候成功,服务器不光返回error,msg,还要加一个环信的password,这样你拿到password 可以再进行登录。当然注册的时候Phone和Password需都需要存储,方便在AppDelegate入口类登录。

1.注册自己APP账号-成功-注册环信账号,密码为注册APP的密码-成功-Post密码给服务器-成功-登录环信账号。

2.登录自己APP账号-成功-拿到服务器返回的Password,登录环信账号-成功。

3.AppDelegate存储账号和密码

除了上面两种方式,还有一种就是环信有一个会记录的方法,除了注销会一直存在。怎么简单怎么来。
 
OK,注册成功,我们继续讨论:EaseConversationListViewController

如果你的页面换成了EaseConversationListViewController,那么你不需要做任何操作都可以获取到最新数据,但是你需要点击进入会话页面。




ChatViewController 就是你的会话列表页,关于ChatViewController * chatVc = [[ChatViewController alloc]initWithConversationChatter:model.title conversationType:eConversationTypeChat];

1.model.title 这个会话列表的用户名,你也可以写死。

2.eConversationTypeChat,枚举,这是单人会话,还有群聊等等。

有了这个就可以传到会话列表页了。

会话列表就不多说了,没有这个文件我直接发给你好了。

对了有人会出现这种情况,如下图:





是否发现重复消息。[self tableViewDidTriggerHeaderRefresh]; 检查一下这个方法是不是在chatViewController 和EaseMessageViewCOntroller 的ViewDidLoad 里面都调用了,看如果都有,随便删除一个这个方法。就ok了!
 
关于头像昵称如何能做成活的,思路是:环信有一个方法,可以获取消息列表的信息。




这个方法就在你的根视图里拿出来。能获取到所有消息的环信的账号,如果你们注册的环信账号是手机号的。第一次发请求的话给服务器依次发送这个手机号,获取他的昵称和头像,然后存到本地。下次再次发请求的时候之前获取一下这个信息,有的话直接拿,没有的话就发送请求。
 
现在我在研究如何改变会话列表的名字和头像,因为有些产品的需要,不能展示账号或者手机号,所以如果你还有不懂得地方你加我好友QQ:1119718338,欢迎一起交流。当然如果您觉得对您有帮助,请点赞或打赏!谢谢!
  查看全部
有人说环信需要服务器和iOS端配合,其实可以两种方式:

1.全有iOS端和环信交互。2.让服务器替我们保存环信密码。

先不说方式,先教大家如何集成。环信里有一个自带已经弄好的EaseUI,如果你对页面的要求不是很大,那就用环信自带的EaseUI开发。我使用的就是环信的EaseUI。为了不影响项目,你先导入需要的系统框架。我使用的是即时通讯V2版本。

集成准备前请看他们的官网文档介绍。http://docs.easemob.com/start/ ... mport

是即时通讯V3,请按照他去添加对应的库!没有安全感的可以全部添加!只要你不限工程大,麻烦就可以。

添加完成以后。下载他的SDK,有几种文件需要你拖进来。
1.EaseUIResource.bundle

2.gifimage(包含文件:EMGifImage.h以及.m)

3.EaseMobSDK

4.EaseUI(包括子目录:include,lib,resources*请注意里面不是图片是库,XMPP框架。 )

5.Resource(环信的图片文件夹)

6.ChatViewController(你可以用他们示范demo里拖,这个类就是对话类)

7.CystomizableCell

8.PrefixHeader.pch

9.Localizable.strings
如果还是少了什么东西不知道怎么加,请加我QQ:1119718338,我给你发送所有需要的文件,前提请注意加好友时候留言清楚。
如果你前面有一个会话列表页面,例如下图:
1240.png

如果你也有一个消息页面的话,如果没有什么太多内容,我建议放弃你自己自定义的TableViewCell,因为EaseUI 里有已经写好的消息页面:EaseConversationListViewController

这个页面不用改动太多。如果你发现这个页面为什么不用登录环信账号,环信是这样的:你在AppDelegate登录。

登录的demo为:
[[EaseMob sharedInstance].chatManager asyncLoginWithUsername:@“用户的环信账号” password:@“用户的环信密码” completion:^(NSDictionary *loginInfo, EMError *error) {

NSLog(@"error====%@",error);

if (!error)

{

NSLog(@"登录成功");

NSLog(@"===%@",loginInfo);

//获取数据库中数据

[[EaseMob sharedInstance].chatManager loadDataFromDatabase];

}

} onQueue:nil];
当然有登录就有注册

[[EaseMob sharedInstance].chatManager asyncRegisterNewAccount:phone.text password:password2.text withCompletion:^(NSString *username, NSString *password, EMError *error) {

NSLog(@"error====%@",error);

if (!error)

{

NSLog(@"注册成功");

NSLog(@"===%@",loginInfo);

}

} onQueue:nil];


1.只用iOS和环信交互:在你app注册会员的时候,注册成功获得返回值,正确的返回值内去注册环信账号,而环信账号就是用户注册你app的账号,密码需要写死,例如:123456,那么无论谁注册,传给环信的密码都是123456。这样方便登录。如果环信返回给你是注册成功,那么你需要在成功里创建NSUserDeafults存储你的环信账号,密码就不用存了。并且调用环信登录方法。如果不在AppDelegate里写登录,你的APP如果退出了,下次打开就没用了,所以必须时时刻刻登录。所以你需要在AppDelegate登录,账号就是你本地存储的账号。密码还是死的。如果正常流程来说就是:

1.注册自己APP账号-成功-注册环信账号,密码为死的-成功-登录环信账号。

2.登录自己APP账号-成功-登录环信

3.AppDelegate存储账号。



2.让iOS,服务器,环信交互:通过上面的那种方式,跟服务器唯一交互的就是密码,你需要在用户注册你自己产品的时候,密码也注册环信。注册成功,将密码post给服务器,登录的时候成功,服务器不光返回error,msg,还要加一个环信的password,这样你拿到password 可以再进行登录。当然注册的时候Phone和Password需都需要存储,方便在AppDelegate入口类登录。

1.注册自己APP账号-成功-注册环信账号,密码为注册APP的密码-成功-Post密码给服务器-成功-登录环信账号。

2.登录自己APP账号-成功-拿到服务器返回的Password,登录环信账号-成功。

3.AppDelegate存储账号和密码


除了上面两种方式,还有一种就是环信有一个会记录的方法,除了注销会一直存在。怎么简单怎么来。
 
OK,注册成功,我们继续讨论:EaseConversationListViewController

如果你的页面换成了EaseConversationListViewController,那么你不需要做任何操作都可以获取到最新数据,但是你需要点击进入会话页面。
1039815-3ecd18bb8205386e.jpg

ChatViewController 就是你的会话列表页,关于ChatViewController * chatVc = [[ChatViewController alloc]initWithConversationChatter:model.title conversationType:eConversationTypeChat];

1.model.title 这个会话列表的用户名,你也可以写死。

2.eConversationTypeChat,枚举,这是单人会话,还有群聊等等。


有了这个就可以传到会话列表页了。

会话列表就不多说了,没有这个文件我直接发给你好了。

对了有人会出现这种情况,如下图:

1039815-44d6a06e34d36547.png

是否发现重复消息。[self tableViewDidTriggerHeaderRefresh]; 检查一下这个方法是不是在chatViewController 和EaseMessageViewCOntroller 的ViewDidLoad 里面都调用了,看如果都有,随便删除一个这个方法。就ok了!
 
关于头像昵称如何能做成活的,思路是:环信有一个方法,可以获取消息列表的信息。
1039815-451bc4398ac8a957.png

这个方法就在你的根视图里拿出来。能获取到所有消息的环信的账号,如果你们注册的环信账号是手机号的。第一次发请求的话给服务器依次发送这个手机号,获取他的昵称和头像,然后存到本地。下次再次发请求的时候之前获取一下这个信息,有的话直接拿,没有的话就发送请求。
 
现在我在研究如何改变会话列表的名字和头像,因为有些产品的需要,不能展示账号或者手机号,所以如果你还有不懂得地方你加我好友QQ:1119718338,欢迎一起交流。当然如果您觉得对您有帮助,请点赞或打赏!谢谢!
 
1
评论

Duplicate interface definition for class 'EaseUI'解决办法 iOS EaseUI swift

※樂※ 发表了文章 • 454 次浏览 • 2016-09-05 12:44 • 来自相关话题

今天项目迁移时发现报 Duplicate interface definition for class 'EaseUI' 错误,然后重新修改了EaseUI-Prefix的指定路径就好了!
今天项目迁移时发现报 Duplicate interface definition for class 'EaseUI' 错误,然后重新修改了EaseUI-Prefix的指定路径就好了!
1
评论

Android EaseUI里的百度地图替换为高德地图 EaseUI Android

Wxin 发表了文章 • 4279 次浏览 • 2016-01-30 13:11 • 来自相关话题

鉴于有些客户的项目里要使用高德地图,我就把EaseUI里的百度地图替换为了高德地图,提供给有需要的客户下载使用。
(EaseUI里的类名没有做修改,还是沿用的之前的,想修改的可自行修改)
依赖这个EaseUI之后,需要在项目的清单文件里去配置权限




还有高德地图的appkey和定位服务




我把依赖这个EaseUI写的demo也一并上传了,可以去参考下。
github上的地址:
https://github.com/wangxinjeff/WXEaseUIDemo
我在这里只是简单的实现了高德地图的地位,大家可以根据高德的api自行扩展。 查看全部
鉴于有些客户的项目里要使用高德地图,我就把EaseUI里的百度地图替换为了高德地图,提供给有需要的客户下载使用。
(EaseUI里的类名没有做修改,还是沿用的之前的,想修改的可自行修改)
依赖这个EaseUI之后,需要在项目的清单文件里去配置权限
QQ截图20160130130317.png

还有高德地图的appkey和定位服务
QQ图片20160128201903.png

我把依赖这个EaseUI写的demo也一并上传了,可以去参考下。
github上的地址:
https://github.com/wangxinjeff/WXEaseUIDemo
我在这里只是简单的实现了高德地图的地位,大家可以根据高德的api自行扩展。
3
评论

一个走过弯路的人告诉你 集成iOS-ui3.0 需要注意的事项. iOS 3.0 EaseUI 本地通知和离线推送 常见问题和注意事项

zl 发表了文章 • 4887 次浏览 • 2016-01-08 16:48 • 来自相关话题

 
开场就不擅长了,如题,直接上干货!喜欢请为我点个赞,就是这么直接!
 
 
1:关于easeui和sdk的导入,建议大家手动下载导入,尤其是easeui,这样后期可以定制,更自由。

2:​新下载的sdk文件里面,lib文件下有两个.a库:libEaseMobClientSDK.a是完整的库,libEaseMobClientSDKLite.a是不包含语音通话的轻量版。根据你的项目是否需要语音通话(注意不是发送语音消息,而是类似于QQ电话的实时语音)来选择删掉哪个。这里必须有且只有一个.a库。对应的other link设置 .a====-ObjC/****/ Lite.a====-force_load+路径。

3:注意sdk的依赖库不要少加。另外,文档给的依赖库截图是运行后的效果截图,Xcode会自动把sdk也编译显示出来,所以你在build phases里面添加的时候不用手动再添加环信sdk的库。

4:关于消息通知问题。消息通知分为两种。一种是home键后的app在后台的时候的通知,这时候消息走的还是长连接,所以此时后台的通知要自己做,做一个本地通知,demo已经实现了,具体参考demo mainvc里面的didreceivemessage里面的showNotificationWithMessage:,细心的也会注意到这里也是设置消息声音震动提示的地方。主要要写在你的主视图控制器里。第二种是离线推送,也就是apns,在app被杀掉的时候通知栏里会弹出横幅提示。这需要你上传证书到环信管理后台,详细流程在这里http://community.easemob.com/article/825307504。

5:关于环信SDK在appdelegate里面的配置一定不要少。

6:did开头的回调方法注意:1>.当前页面存在;2>.遵守协议,例如@interface MainViewController () < IChatManagerDelegate>;
3>.添加代理 [[EaseMob sharedInstance].chatManager removeDelegate:self];
 [[EaseMob sharedInstance].chatManager addDelegate:self delegateQueue:nil] 写在viewdidload里面。

7:关于昵称和头像问题,先参阅文档http://docs.easemob.com/doku.php?id=start:000quickstart:40nickname。

8:关地图定位问题,要在info.plist文件里加上字段NSLocationWhenInUseUsageDescription=需要使用定位,可以参考demo。

9:环信不支持bitcode,build set里面设置为NO。      

10:环信文档里有新手上路一项,里面有很多需求实现的思路,比如@功能的实现思路等,对大家扩展很有帮助,当然后续我们也会丰富更多。地址:http://docs.easemob.com/doku.p ... start。
 
 本篇就先整理这么多吧,有不明白的下方评论留言,后续持续更新! 查看全部
 
开场就不擅长了,如题,直接上干货!喜欢请为我点个赞,就是这么直接!
 
 

1:关于easeui和sdk的导入,建议大家手动下载导入,尤其是easeui,这样后期可以定制,更自由。

2:​新下载的sdk文件里面,lib文件下有两个.a库:libEaseMobClientSDK.a是完整的库,libEaseMobClientSDKLite.a是不包含语音通话的轻量版。根据你的项目是否需要语音通话(注意不是发送语音消息,而是类似于QQ电话的实时语音)来选择删掉哪个。这里必须有且只有一个.a库。对应的other link设置 .a====-ObjC/****/ Lite.a====-force_load+路径。

3:注意sdk的依赖库不要少加。另外,文档给的依赖库截图是运行后的效果截图,Xcode会自动把sdk也编译显示出来,所以你在build phases里面添加的时候不用手动再添加环信sdk的库。

4:关于消息通知问题。消息通知分为两种。一种是home键后的app在后台的时候的通知,这时候消息走的还是长连接,所以此时后台的通知要自己做,做一个本地通知,demo已经实现了,具体参考demo mainvc里面的didreceivemessage里面的showNotificationWithMessage:,细心的也会注意到这里也是设置消息声音震动提示的地方。主要要写在你的主视图控制器里。第二种是离线推送,也就是apns,在app被杀掉的时候通知栏里会弹出横幅提示。这需要你上传证书到环信管理后台,详细流程在这里http://community.easemob.com/article/825307504。

5:关于环信SDK在appdelegate里面的配置一定不要少。

6:did开头的回调方法注意:1>.当前页面存在;2>.遵守协议,例如@interface MainViewController () < IChatManagerDelegate>;
3>.添加代理 [[EaseMob sharedInstance].chatManager removeDelegate:self];
 [[EaseMob sharedInstance].chatManager addDelegate:self delegateQueue:nil] 写在viewdidload里面。

7:关于昵称和头像问题,先参阅文档http://docs.easemob.com/doku.php?id=start:000quickstart:40nickname。

8:关地图定位问题,要在info.plist文件里加上字段NSLocationWhenInUseUsageDescription=需要使用定位,可以参考demo。

9:环信不支持bitcode,build set里面设置为NO。      

10:环信文档里有新手上路一项,里面有很多需求实现的思路,比如@功能的实现思路等,对大家扩展很有帮助,当然后续我们也会丰富更多。地址:http://docs.easemob.com/doku.p ... start


 
 本篇就先整理这么多吧,有不明白的下方评论留言,后续持续更新!
12
评论

【视频学习】IOS EaseUI集成视频 iOS EaseUI 环信

beyond 发表了文章 • 76643 次浏览 • 2015-12-22 16:27 • 来自相关话题

 


0
评论

关于环信新版EaseUI库导入AndroidStudio问题 Android EaseUI

lzan13 发表了文章 • 11310 次浏览 • 2015-11-18 16:55 • 来自相关话题

环信大牛最新封装了一个供开发者直接使用的UI库 EaseUI,这个可以让大家快速的进行集成环信的sdk进行实现聊天,官方也说了老版本的demo不会进行维护,重点维护这个EaseUI,但是在自己导入的时候有时会有些问题,这里用1.4版本的AndroidStudio导入3.0的demo来说明下;
首先就是打开as导入项目




我喜欢给他改个名字EaseUIDemo




导入完成
我这边导入时没有问题的,有时导入demo或者我们自己创建的项目 然后导入easeui库,并加入到自己的项目中去的时候可能会出现下边这样的错误 ,出现问题的原因的大致因为EaseUI默认引入的v4包的版本20.0.0,但是大家的开发环境不同,sdk版本以及编译器和support库版本不同,会出现错误;




解决办法:这个时候就去点击项目设置,选中EaseUI把sdk版本设置成和build.gradle里一样的版本就行了,如果过低,建议更新sdk,还不行,就把自己的项目的sdk版本和EaseUI都设置成一样,v4库也设置成一样




设置了之后,要记得同步gradle 1 or 2 方式都可以




如果是自己创建的项目想在as中引入EaseUI库,可以点击File->New->Import Module选项




同步发表到个人博客:http://melove.net 查看全部
环信大牛最新封装了一个供开发者直接使用的UI库 EaseUI,这个可以让大家快速的进行集成环信的sdk进行实现聊天,官方也说了老版本的demo不会进行维护,重点维护这个EaseUI,但是在自己导入的时候有时会有些问题,这里用1.4版本的AndroidStudio导入3.0的demo来说明下;
首先就是打开as导入项目
tupian010.png

我喜欢给他改个名字EaseUIDemo
tupian011.png

导入完成
我这边导入时没有问题的,有时导入demo或者我们自己创建的项目 然后导入easeui库,并加入到自己的项目中去的时候可能会出现下边这样的错误 ,出现问题的原因的大致因为EaseUI默认引入的v4包的版本20.0.0,但是大家的开发环境不同,sdk版本以及编译器和support库版本不同,会出现错误;
tupian012.png

解决办法:这个时候就去点击项目设置,选中EaseUI把sdk版本设置成和build.gradle里一样的版本就行了,如果过低,建议更新sdk,还不行,就把自己的项目的sdk版本和EaseUI都设置成一样,v4库也设置成一样


tupian013.png

设置了之后,要记得同步gradle 1 or 2 方式都可以
tupian014.png

如果是自己创建的项目想在as中引入EaseUI库,可以点击File->New->Import Module选项
tupian009.png

同步发表到个人博客:http://melove.net