由于项目需求,需要在项目中接到消息的时候做不同界面的不同的操作,哪儿需要哪儿就要添加代理:引起代理事件重复执行:所以要在VC显示的时候添加代理,消失的时候删除代理 环信 透传 消息多次接收情况(由于代理多次添加,没有取消掉) 在VC将要显示和 消失中 挂代理,删除代理 -(void)viewWillAppear:(BOOL)animated{} -(void)viewWillDisappear:(BOOL)animated{} #pragma mark - registerNotificatio…
环信iOS端3.0版本集成记录--聊天界面篇 环信离线推送证书... 1,环信处在后台的时候,消息的接收与推送 离线发推送 配置属性 EMCallOptions *options = [[EMClient sharedClient].callManager getCallOptions]; //当对方不在线时,是否给对方发送离线消息和推送,并等待对方回应 options.isSendPushIfOffline = NO; [[EMClient sharedClient].callManager…
一.上传写好的库到github(我这里使用SourceTree客户端) 1.在github上创建一个仓库 2.将仓库拉倒本地 复制仓库地址 将刚才复制的地址粘贴到这里 3.上传项目到github 将写好的库放在上一步的目标路径文件夹里. 可以看到sourceTree里新增的文件,将为暂存文件放到已暂存. 点下面提交信息的输入框,勾选下面立即推送,可以同时提交到本地及远程仓库 二.上传到cocoapods 1.制作podspec文件 方法一:cd 你的仓库所在目录 ---> pod spec cr…
这两天在做环信的消息回撤,在网上找了许久没有这种案例,之后官方的一些方法,但是自己做,还是需要花点时间去整理,所以我决定等我把这个做好之后,分享给大家,如果做的不好多多指教,谢谢- 首先要实现消息撤回就是两个步骤,一个是发送要回撤的透传消息 .一个是接收透传信息,删除要回撤的消息. 第一步 : ChatViewController.m 自己定义一个 UIMenuItem *_messageRetracementMenuItem; 第二步 这个方法里面添加一下撤回字段,我把整段都复制过来了,你们对…
解决办法很简单,数据重复就是EaseMessageViewController和ChatViewController重复调用了这个吧?//通过会话管理者获取收发消息 [self tableViewDidTriggerHeaderRefresh]; 如果你修改了,还不行,可以告诉我一下,共同学习,共同寻找一下解决方法…
原文:http://m.blog.csdn.net/article/details?id=38824551 1.先创建一个apns证书,链接如下 http://developer.easemob.com/docs/emchat/ios/push/certificate.html 创建完证书后,将证书弄成p12文件,然后上传到环信后台 2.再创建真机调试证书,和描述文件,保证能进行真机调试.并且appid要又推送功能 3.绑定环信证书和appkey //注册 APNS文件的名字, 需要与后台上传证…
集成IOS SDK 在您阅读此文档时,我们假定您已经具备了基础的 iOS 应用开发经验,并能够理解相关基础概念. 下载SDK 通过Cocoapods下载地址 不包含实时语音版本SDK(EaseMobClientSDKLite),引用时 #import <EaseMobSDK/EaseMob.h> pod 'EaseMobSDK', :git => 'https://github.com/easemob/sdk-ios-cocoapods.git' 包含实时语音版本SDK(EaseMobC…
首先,关于环信SDK的下载和一些依赖库的添加,在此我就不做详细介绍,(http://www.easemob.com/download/im)附上环信官网文档,可以看一下,上面都可以下载,也有相关配置介绍. 今天主要说一下,环信集成遇到的各种坑,各种问题,有的连文档都不说明的坑..(主要是讲解完全集成环信,UI的聊天界面,单聊功能也是环信的这种情况) 各位可能刚在官网下载下来ChatDemo-UI3.0这个版本,会发现HyphenateFullSDK和官网文档有个不一样的地方,少了个文件(libH…
第一种情况:    你用的环信APPkey 是授权模式的   只要改成开放模式就可以了 第二种情况:    上述情况在环信官网都有说明  但是这种情况  环信官网就没得说明   只说的是同步方法 注册 注册模式分两种,开放注册和授权注册.只有开放注册时,才可以客户端注册. 开放注册是为了测试使用,正式环境中不推荐使用该方式注册环信账号: 授权注册的流程应该是您服务器通过环信提供的 REST API 注册,之后保存到您的服务器或返回给客户端. 注册用户名会自动转为小写字母,所以建议用户名均以小写注…
"UITableView" iOS开发中重量级的控件之一;在日常开发中我们大多数会选择自定Cell来满足自己开发中的需求, 但是有些时候Cell也是可以不自定义的(比如某一个简单的页面,只需要展示一些简单的信息);但是当页面大于屏幕显示的范围的时候, 滑动UITableView的时候,Cell上的内容会出现混乱或者错误的现象,经过反复的查找问题应该是出现在UITableViewCell的重用机制上;那么下面我们就来说一下解决这种问题的几种办法,以及最好的解决办法: (一)使用系统的Ce…
事件背景: 最近在做一个移动端业务的时候碰到一个bug,在ios上对body绑定click事实现事件代理冒泡至某些元素上尽然不生效. 思考: 暂借助jquery展示下事件绑定代码,将所有标签含有data-tip属性的元素通过事件代理至body $('body').on('click','[data-tip]',function(e){ console.log($(this.).attr('data-tip')) }) 这样做在android和pc上都可以正常实现,但是在ios上面对部分标签尽然不…
枪魂微信平台ios手机点击返回 网页授权失败,报key失效.已经解决,原因是授权key只能使用一次,再次使用就会失效. 解决办法:第一次从菜单中进行授权时,用session记录key和open_id.当点击返回时,判断session中key是否为空当不为空时,直接获取open_id,就不用通过key进行验证并获取open_id . $open_id = ""; if(!empty($_GET["code"])&&empty($_SESSION[&qu…
相信很多人写的短信监听应用在小米手机上是拦截不到短信的,这是因为小米对短信的处置权优先分给了系统.我们可以在短信的[设置]→[高级设置]→[系统短信优先]中发现短信的优先处理权默认是分给系统的,只要关闭这个系统优先权,短信监听应用就可以正常的拦截到短信了.   …
APP push一个界面,返回的时候,tabBar上的图标和文字出现一个从上往下的神奇动画 经过测试发现,如果使用系统OS12.1 UINavigationController + UITabBarController( UITabBar 磨砂),在popViewControllerAnimated 会遇到tabbar布局错乱的问题: - (void)pushViewController:(UIViewController *)viewController animated:(BOOL)anim…
在实际开发过程中,我们经常会遇到需要引用的jar依赖,在我们公司的maven仓库不存在,这个时候我们就需要把jar上传上去,在项目中添加对应依赖就OK了. 步骤1:下载jar 在http://mvnrepository.com/中找到所需jar包,或者在其它地方下载对应jar包. 步骤2:添加仓库 打开maven仓库视图界面,登录(一般是用管理员用户),点击左边的Repositories,找到Third Party,检查如图所示配置. 步骤三:上传jar 点击Artifact Upload,GA…
PROJECT --> Info --> Deployment Target --> IOS Deployment Target  里面的值 要设置为  <=真机系统版本 TARGETS --> Summary --> IOS Application Target --> Deployment Target  里面的值 要设置为 <=真机系统版本 也要查看一下这两个是否正确 PROJECT --> Build Settings --> Deplo…
许多录音类 APP 都提供录音回放功能,大家在做这类 APP 的时候也经常会遇到这个需求.当大家用以前的套路在 iOS 8 上录音的时候,在模拟器上跑得挺好的,但是一上真机就跪了,为什么?因为真机底层是真实的硬件,跟模拟器还是有一些差别的,例如真机支持硬件解码等等. 在 iOS 8 上,录音并播放需要在录音前就申请“录音并播放”的 session(swift): func setSessionPlayAndRecord() { let session:AVAudioSession = AVAud…
摘要 在各种BS架构的应用程序中,往往都希望服务端能够主动地向客户端推送各种消息,以达到类似于邮件.消息.待办事项等通知. 往BS架构本身存在的问题就是,服务器一直采用的是一问一答的机制.这就意味着如果客户端不主动地向服务器发送消息,服务器就无法得知如何给客户端推送消息. 随着HTML.浏览器等各项技术.标准的发展,依次生成了不同的手段与方法能够实现服务端主动推送消息,它们分别是:AJAX,Comet,ServerSent以及WebSocket. 本篇文章将对上述提及到的各种技术手段进行直白化的…
今天准备了解下MVVM设计模式,于是就从GitHub上Down了一个MVVM的demo(地址在这)学习,下载之后,在模拟器上运行一下,出现如下图上下有黑边,以前也遇到过这个问题,但当时没有记录,现在还得再次googl,这次记录下来以备下次查询. 解决过程 1.新建一个Launch Screen文件 2.然后在工程的General目录下Launch Screen File选项中选择刚刚新建的Launch Screen文件 3.重新运行一下,解决了…
Ordinarily, overflow: hidden; on the body tag is sufficient to prevent scrolling a web page, if for instance you're creating a drawer to hold content that will scroll separately. However, this doesn't work in iOS6. The best I've come up with so far i…
在ie下如果返回类型为jsonresult,ie老版本无法识别json类型,默认将会采用下载或者打开文件! 如果使用mvc的话.直接修改action返回类型为string即可,例如:return JsonConvert.SerializeObject(new { url = "", error = "请选择文件" });…
<el-date-picker type="date" value-format="yyyy-MM-dd" placeholder="转出日期" v-model="user.relation.outDate" style="width: 100%;"></el-date-picker> 加一个:value-format="yyyy-MM-dd" 就可以解决.…
jsp页面 <td style="text-align: left;padding-left: 20px;"> <img name="image" id="myimage" src="" style="width: 80px;height: 100px"/> <a href="javascript:;" class="file">选…
李洪强iOS开发之-环信04_消息 消息:IM 交互实体,在 SDK 中对应的类型是 EMMessage.EMMessage 由 EMMessageBody 组成. 构造消息   构造文字消息 EMTextMessageBody *body = [[EMTextMessageBody alloc] initWithText:@"要发送的消息"]; NSString *from = [[EMClient sharedClient] currentUsername];   //生成Mess…
代码地址如下:http://www.demodashi.com/demo/11645.html 我的博客地址 之前一直想实现聊天的功能,但是感觉有点困难,今天看了环信的API,就利用下午的时间动手试了试,然后做了一个小Demo. 因为没有刻意去做聊天软件,花的时间也不多,然后界面就很简单,都是一些基本知识,如果觉得功能简单,可以自行添加,我这就不多介绍了. 照例先来一波动态演示: 功能很简单,注册用户 --> 用户登录 --> 选择聊天对象 --> 开始聊天 使用到的知识点: Recyc…
公司最近使用第三方环信SDK的进行通信聊天,基本已完成.记录下填坑之路 1.可以通过以下方式引用 WebSDK 1.安装 npm install easemob-websdk --save 2. 先 require ,再访问 Web IM . require('easemob-websdk'); 注:该方式只引用了 Web SDK ,仍需在项目里配置 WebIMConfig 文件内的参数,用于实例化 websdk.配置在 webim.config.js 文件内进行以下配置: xmppURL: '…
点击链接先查看一下apicloud 环信的文档 https://docs.apicloud.com/Client-API/Open-SDK/easeChat 文档中写了很多,但官方给的文档还是有问题,之前做环信就被坑了一把,没有实现自己想要的功能,最后把所有的数据都推翻了以后,重新又写了一番,最终只采用了官方文档中的登录,退出登录,发送消息,与接收消息四个地方,聊天界面学员自己搭建,同时聊天的会话记录,页需要自己搭建,聊天消息的存储,等等 下面我只把精华的部分,登录与退出登录可参考官方文档,重点…
CC1101 433无线模块,STM8串口透传   原理图:http://download.csdn.net/detail/cp1300/7496509 下面是STM8程序 CC1101.C /************************************************************************************************************* * 文件名: CC1101.c * 功能:  STM8 CC1101驱动函数 * 作者…
4G DTU为什么要透传 透传的目的就是为了在数据传输的过程中不对数据做任何出来,实现发送方和接收方的数据完全一样,长度和内容完全没有变化.它主要是使用在智能设备之间的远程串口数据传输,是一种和传输方式.传输网络的介质.传输协议.调制解调方式都没有关系的一种数据传送方式,在物联网时代,智能设备之间要进行数据透传,使用具有透传功能的4G DTU,即远程无线数据传输终端,就是实现数据透传的方法之一.        成都众山4G DTU远程无线数据透明传输设备 采用工业级的设计,轻松适应各种类高/低温…
onenet-edp上报数据点和端对端透传 一.前言 edp是onenet用于tcp设备定制的一套协议,能够灵活地实现数据上报和透传: 二.准备工作 1.找到edp页面 进入工作台后,找到多协议接入,然后选择edp 2.创建edp产品 记住APIKEY,之后有用 3.注册edp设备 记住设备ID,之后有用 三.数据上报 使用模拟软件测试,可在官网上下载 1.连接 发送成功后,设备即上线,一分钟内可以发其他指令,超时无数据发送会断开连接 2.数据上报 上报成功后,在数据点中可以看到信息 四.端对端…