首页 > 代码库 > 【问题收集·中级】关于XMPP使用Base传送图片
【问题收集·中级】关于XMPP使用Base传送图片
【问题收集·中级】关于XMPP使用Base传送图片
下面是我与博友的问答过程:并在最后链接附录了相应的文件:
博友问题: 16:35:38
他跟我说要 内容图片 base64编码 上传、、
博友问题: 16:35:45
我用的是afn。。怎么上传呢。。擦
博友问题: 16:35:46
没做过
我的回答: 16:36:20
Base64就是把图片转成字符串
博友问题: 16:36:26
额。
博友问题: 16:36:33
怎么转 ?
我的回答: 16:36:44
你怎么上传字符串,就怎么上传
我的回答: 16:36:51
稍等,我把我写的方法发给你
博友问题: 16:35:45
我用的是afn。。怎么上传呢。。擦
博友问题: 16:35:46
没做过
我的回答: 16:36:20
Base64就是把图片转成字符串
博友问题: 16:36:26
额。
博友问题: 16:36:33
怎么转 ?
我的回答: 16:36:44
你怎么上传字符串,就怎么上传
我的回答: 16:36:51
稍等,我把我写的方法发给你
DATA2STRING.zip
3.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
汗。。。没做过。杯具了
3.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
汗。。。没做过。杯具了
问题详情见:https://www.evernote.com/shard/s227/sh/0058fec7-299f-4dea-8c12-ef78ceb80041/5711986e3528a4f3dbf9ffba278acbf7
TalkViewController.m
15.5 KB
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。