【问题收集·中级】关于XMPP使用Base传送图片
【问题收集·中级】关于XMPP使用Base传送图片
下面是我与博友的问答过程:并在最后链接附录了相应的文件:
博友问题: 16:35:38
博友问题: 16:35:45
我用的是afn。。怎么上传呢。。擦
博友问题: 16:35:46
没做过
我的回答: 16:36:20
Base64就是把图片转成字符串
博友问题: 16:36:26
额。
博友问题: 16:36:33
怎么转 ?
我的回答: 16:36:44
你怎么上传字符串,就怎么上传
我的回答: 16:36:51
稍等,我把我写的方法发给你
DATA2STRING.zip3.8 KB
博友问题: 16:37:01
嗯 。。、
下面是我XMPP中发送图片的核心代码
我的回答: 16:40:08
-(void)sendImage:(UIImage *)aImage
{
NSLog(@"准备发送图片");
NSData *data = [Photo image2Data:aImage];
NSString *imgStr =[data base64Encoding];
if (data.length > 0)
{
NSDictionary *messageDic=[NSDictionary dictionaryWithObjectsAndKeys:imgStr,@"file",[NSNumber numberWithInt:kWCMessageTypeImage],@"messageType", @"",@"text",[[NSUserDefaults standardUserDefaults] valueForKey:kMY_USER_NICKNAME],@"nickName",@"1",@"isRead", nil];
NSString *msgJson=[messageDic JSONRepresentation];
XMPPMessage *mes =[XMPPMessage messageWithType:@"chat" to:[XMPPJID jidWithString:_friendJid resource:@"ios"]];
[mes addChild:[DDXMLNode elementWithName:@"body" stringValue:msgJson]];
//发送消息
[[WCXMPPManager sharedInstance] sendMessage:mes];
[_messageText setText:nil];
}
}
博友问题: 16:41:05
[data base64Encoding];
博友问题: 16:41:19
就直接这个、就可以转为字符串了、对吧 ?
我的回答: 16:42:47
嗯一行
我的回答: 16:43:00
用我写的工具类就行
博友问题: 16:43:18
好 。我写写看 。。
博友问题: 16:43:36
这样获取到 图片的字符串。。然后上传到服务器。。其他就没啥事了。。
博友问题: 16:46:59
对了、、
博友问题: 16:47:06
拿到图片的那些代码呢 ?
博友问题: 16:47:31
这图片从哪里选择出来。。。
我的回答: 16:47:57
照片选择器啊
我的回答: 16:48:07
我是用户自己选的图片
我的回答: 16:48:08
#pragma mark ----------图片选择完成-------------
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
UIImage *chosedImage=[info objectForKey:@"UIImagePickerControllerEditedImage"];
[self.navigationController dismissViewControllerAnimated:YES completion:^{
[self sendImage:chosedImage];
}];
}
博友问题: 16:48:36
图片选完了、应该有个预览图的 。。
博友问题: 16:49:51
我写写看 。。
博友问题: 16:49:59
汗。。。没做过。杯具了
【问题收集·中级】关于XMPP使用Base传送图片的更多相关文章
- 【问题收集·中级】关于指示器自定义图片与UUID
博友问题: 大哥 求教一下 iOS7 能否获取到 uuid 大哥 忙不忙 iOS的加载的时候 动态旋转效果 是 图片 嘛 ? 我的回答 05:43:34hud指示器我用的是这个MBProgressHU ...
- C# base 64图片编码解码
使用WinForm实现了图片base64编码解码的 效果图: 示例base 64编码字符串: /9j/4AAQSkZJRgABAQEAYABgAAD/2wBDAAgGBgcGBQgHBwcJCQgKD ...
- [转] - 如何用QTcpSocket传送图片
我们知道,tcp网络编程发送数据是利用套接字来实现,将要传输的东西转化为数据流再进行传输,为了确保数据传输的准确性和安全性,我们在发送数据流前发送一个quint32的常量来表示所要发送的数据的大小:当 ...
- url传送图片的base64编码给web客户端
base64编码图片: #python3.6 import base64 with open("./aa.jpg", "rb") as f: data = ba ...
- web渗透系列--信息收集
信息收集对于渗透测试前期来说是非常重要的,因为只有我们掌握了目标网站或目标主机足够多的信息之后,我们才能更好地对其进行漏洞检测.正所谓,知己知彼百战百胜! 信息收集的方式可以分为两种:主动和被动. 主 ...
- iOS中XMPP简单聊天实现 好友和聊天
版权声明本文由陈怀哲首发自简书:http://www.jianshu.com/users/9f2e536b78fd/latest_articles;微信公众号:陈怀哲(chenhuaizhe2016) ...
- ios xmpp 发送语音图片解决方案
ios xmpp 发送语音,图片解决方案,有需要的朋友可以参考下. 目前做IM多是用的xmpp. 因为项目需求需要实现语音和图片的发送. 发送语音图片有三种方法. 1,xmpp smack.文件传输方 ...
- Android WebRTC 音视频开发总结
www.cnblogs.com/lingyunhu/p/3621057.html 前面介绍了WebRTCDemo的基本结构,本节主要介绍WebRTC音视频服务端的处理,,转载请说明出处(博客园RTC. ...
- [源码解析] PyTorch 分布式(2) ----- DataParallel(上)
[源码解析] PyTorch 分布式(2) ----- DataParallel(上) 目录 [源码解析] PyTorch 分布式(2) ----- DataParallel(上) 0x00 摘要 0 ...
随机推荐
- Hadoop 部署文档
Hadoop 部署文档 1 先决条件 2 下载二进制文件 3 修改配置文件 3.1 core-site.xml 3.2 hdfs-site.xml 3.3 mapred-site.xml 3.4 ya ...
- PAT甲题题解-1081. Rational Sum (20)-模拟分数计算
模拟计算一些分数的和,结果以带分数的形式输出注意一些细节即可 #include <iostream> #include <cstdio> #include <algori ...
- js中判断是否包含某个字符串
1,字符串中是否包含 str.indexOf("3")indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置.如果要检索的字符串值没有出现,则该方法返回 -1. ...
- No.1101_第十次团队会议
今天项目进展很多,大家都在现在的成果而开心,信心高涨,后面的任务的完成也基本都能指日可待.之前团队出现了各种问题,沟通出现了很多障碍,导致各方面受阻.现在大家再面对面坦诚相对,交流了一下自己的想法,结 ...
- Linux内核分析 笔记四 系统调用的三个层次 ——by王玥
一.知识点总结 (一)用户态.内核态和中断 1.内核态:在高的执行级别下,代码可以执行特权指令,访问任意的物理地址,这时的CPU就对应内核态 2.用户态:在低级别的指令状态下,代码 只能在级别允许的特 ...
- 05-java学习-循环结构
for while do while 增强for 各种循环嵌套.循环和if的嵌套.switch的嵌套
- 英语学习APP
第一部分 调研, 评测 下载并使用,描述最简单直观的个人第一次上手体验. 界面高大上,看起来很美观,是个不错的英语学习软件.我很喜欢. 2.按照<构建之法>13.1节描述的 bug 定义, ...
- Beta版本冲刺(一)
目录 组员情况 组员1(组长):胡绪佩 组员3:庄卉 组员4:家灿 组员5:凯琳 组员6:翟丹丹 组员7:何家伟 组员8:政演 组员9:黄鸿杰 组员10:刘一好 组员11:何宇恒 展示组内最新成果 团 ...
- JS基础(一)异常错误
EvalError(运算错误): raised when an error occurs executing code in eval() RangeError(范围错误): raised when ...
- CentOS75 安装 telnet 进行使用.
1. 安装必须要的服务 yum install xinetd telnet telnet-server 2. 修改增加root用户登录权限 vi /etc/securetty 在最后面增加两行 pts ...