【发布时间】:2016-01-01 23:06:34
【问题描述】:
您好,我正在制作一个基于聊天的应用程序,我可以发送聊天消息,但是如果我在聊天消息中添加图像附件,它就不起作用。这是我的消息代码
if (![[messageStr stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] length] && imgURL==nil) {
return;
}
NSString *MyString;
NSDate *now = [NSDate date];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm,yyyy/MM/dd"];
MyString = [dateFormatter stringFromDate:now];
NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
NSString *myJID=[defaults valueForKey:@"userNameJID"];
if ([imgURL length]==0) {
chatMessageToSendAndPutInDB=[messageStr mutableCopy];
chatMessageToSendAndPutInDB=[[chatMessageToSendAndPutInDB stringByReplacingOccurrencesOfString:@"'" withString:@""] mutableCopy];
}else
{
receivedDataString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
chatMessageToSendAndPutInDB=[receivedDataString mutableCopy];
chatMessageToSendAndPutInDB=[[chatMessageToSendAndPutInDB stringByReplacingOccurrencesOfString:@"'" withString:@""] mutableCopy];
}
[DBObject open];
[DBObject insertInTable:@"chatTable" withUserId:myJID withFriendID:[[ASNGlobalClass shareManager] chatToUserJID] withMessage:chatMessageToSendAndPutInDB withTimeDate:MyString withLeftOrRight:0];
NSXMLElement *body = [NSXMLElement elementWithName:@"body"];
[DBObject closeDatabase];
[self fetchDataFromDatabase];
if([messageStr length] > 0 ) {
[body setStringValue:messageStr];
}else if ([imgURL length]>0){
[body setStringValue:receivedDataString];
} NSXMLElement *message = [NSXMLElement elementWithName:@"message"];
[message addAttributeWithName:@"type" stringValue:@"chat"];
[message addAttributeWithName:@"to" stringValue:chatWithUser];
NSXMLElement *chatStatus=[NSXMLElement elementWithName:@"composing" xmlns:UIApplicationStateActive];
[message addChild:chatStatus];
[message addChild:body];
[[[self appDelegate] xmppStream] sendElement:message];
我正在使用 xmpp 框架和 openfire 服务器。而且我不知道如何发送图像。请帮助我,我正在使用 sqlite 进行存储和获取 提前致谢。
【问题讨论】:
标签: ios objective-c iphone xmpp chat