美文网首页
网易IM-Swift版的相关问题

网易IM-Swift版的相关问题

作者: iOS_我更专业 | 来源:发表于2018-01-08 13:24 被阅读0次

1、其他第三方的问题

    pod 'NIMKit',

    这个Pod会自带UI框架和IM框架,其中还包括

pod NIMKit之后带的第三方

    至此,网易项目就可以了,想要调用,直接在Swift头问价加载:

NIMKit头文件

我的项目里用到了:SwiftyJSON、ObjectMapper、Alamofire等其他第三方,这类第三方因为在pods文件倒入时,不能添加use_frameworks!会报错,所以需要手动导入。

    直接在GitHub下载需要的第三方(以Alamofire为例):

直接将项目包放置项目文件架里 选择红框即可 再在这里添加即可,注意选择iOS的

2、IM初始化

        Swiftt:AppDelegate初始化: NIMSDK.shared().register(withAppID: “”, cerName:nil)

                    登录:                        NIMSDK.shared().loginManager.login(“”, token:“”) { (error)in

                if error !=nil{

                    //网易云登录失败

                }

            }

3、IM播放语音的功能

    因为我们要保存网易IM时的语音URL,直接就调用了网易的播放语音功能:

        a、需继承:NIMMediaManagerDelegate

        b、添加代理:NIMSDK .shared().mediaManager.add(self)

        c、播放:NIMSDK.shared().mediaManager.play(filePath)//filePath为网易加密的语音文件url,所以这里得下载到本地,这里就不放置下载代码了~

             停止:NIMSDK.shared().mediaManager.stopPlay()

        d、语音播放的几个回掉:

            func playAudio(_filePath:String, didBeganWithError error:Error?) {

                print("开始了",error)

            }

            func playAudio(_filePath:String, didCompletedWithError error:Error?) {

                print("播完了",error)

            }

            如果需要还可去NIMMediaManagerDelegate里找需要的方法。

4、网易IM与Swift代码的衔接

        实际项目里,我们自定义了发送消息的权限,但因为Swift与OC的调用不方便,造成了我们实际自己操作的时候,这两个类用OC去封装实现了。

    这里我们在NIMSessionViewController类里增加了:@property (nonatomic, strong) NSString *USER_ID;这个属性,但是我是用Swift调用的,点语法直接传值的时候会传不过来,得自己再写Set/Get方法。

5、聊天室更改用户昵称

NIMMessageChatroomExtension *nNIMMessageChatroomExtension = [[NIMMessageChatroomExtension alloc]init];

        nNIMMessageChatroomExtension.roomNickname=@"***";

        nNIMMessageChatroomExtension.roomAvatar = @"https://www.baidu.com/img/bd_logo1.png";

        self.messageForMenu.messageExt= nNIMMessageChatroomExtension;

    自己要拦截消息,再重写willSendMessage时,消息sendMessage等将发送不出去,所以请别重写这个方法。想要拦截请在NIMSessionViewController里拦截,回掉。

如果有什么问题可随时私聊。谢谢🙏。

相关文章

网友评论

      本文标题:网易IM-Swift版的相关问题

      本文链接:https://www.haomeiwen.com/subject/ujvvnxtx.html