android通过mjsip发送中文乱码
android客户端用mjsip协议发送消息,自定义包头,包体为中文,用java程序作为服务器监听mjsip消息。如果消息体中汉字个数为单数则出现乱码,如果汉字个数为双数则正常。求解释...sip_Provider = new SipProvider(hostIp,PORT);
SipURL sipURL_to = new SipURL("best", IP, PORT);
SipURL sipURL_from = new SipURL("keysense",hostIp,15062);
SipURL sipURL_contact = new SipURL("keysense",hostIp,15062);
NameAddress to_url= new NameAddress(sipURL_to);
NameAddress from_url= new NameAddress(sipURL_from);
FromHeader fromHeader = new FromHeader(from_url, "123456789");
NameAddress contact_url= new NameAddress(sipURL_contact);
SipURL request_uri=to_url.getAddress();
invite = MessageFactory.createRequest(sip_Provider,"INFO",request_uri,to_url,from_url,contact_url,msg);
CSeqHeader cSeqHeader = new CSeqHeader(1,"INFO");
invite.setBody("text/xml", startFtp);
invite.setCSeqHeader(cSeqHeader);
invite.removeExpiresHeader();
invite.setFromHeader(fromHeader);
sip_Provider.sendMessage(invite);
如果msg为中国,java程序服务器接收正常,如果为中国人,接收服务器则为“中国”+乱码 --------------------编程问答--------------------
invite.setBody("text/xml", startFtp);应该是invite.setBody("text/xml", msg);
求高手解释......... --------------------编程问答-------------------- 请问有关于mjsip的demo么,我主要就是数据方面的传输,是直接 用provider还是registClient啊?注册的时候 --------------------编程问答-------------------- 这个跟汉字的单双数没关系,在mjsip中是根据 body.length() 获取的内容长度,但是实际sip协议中Content-Length指的是内容的字节数,你可以根据编码格式获取汉字的字节长度,设置到Content-Length里,就可以发送中文了。
有问题可以加我QQ:511636835,一起讨论sip~~ --------------------编程问答-------------------- 求交流啊~~
补充:Java , Java相关