public class MmsPdu { public void buildPdu(final Context context) { String subject = "测试主题"; String recipient = "1234567"; final SendReq sendRequest = new SendReq(); final EncodedStringValue[] sub = EncodedStringValue.extract(subject); if (sub != null && sub.length > 0) { sendRequest.setSubject(sub[0]); } final EncodedStringValue[] phoneNumbers = EncodedStringValue.extract(recipient); if (phoneNumbers != null && phoneNumbers.length > 0) { sendRequest.addTo(phoneNumbers[0]); } final PduBody pduBody = new PduBody(); final PduPart part = new PduPart(); part.setCharset(CharacterSets.UTF_8); part.setName("simple".getBytes()); part.setContentType("image/png".getBytes()); String furl = "file:///sdcard/test10.png"; part.setDataUri(Uri.parse(furl)); pduBody.addPart(part);
sendRequest.setBody(pduBody); final PduComposer composer = new PduComposer(context, sendRequest); final byte[] bytesToSend = composer.make();
final String mmscUrl = "http://mmsc.monternet.com"; final String mmsProxy = "10.0.0.172"; final int mmsProt = 80; Thread thread = new Thread(new Runnable() {
@Override public void run() { // TODO Auto-generated method stub try {
public void buildPdu(final Context context) {
String subject = "测试主题";
String recipient = "1234567";
final SendReq sendRequest = new SendReq();
final EncodedStringValue[] sub = EncodedStringValue.extract(subject);
if (sub != null && sub.length > 0) {
sendRequest.setSubject(sub[0]);
}
final EncodedStringValue[] phoneNumbers = EncodedStringValue.extract(recipient);
if (phoneNumbers != null && phoneNumbers.length > 0) {
sendRequest.addTo(phoneNumbers[0]);
}
final PduBody pduBody = new PduBody();
final PduPart part = new PduPart();
part.setCharset(CharacterSets.UTF_8);
part.setName("simple".getBytes());
part.setContentType("image/png".getBytes());
String furl = "file:///sdcard/test10.png";
part.setDataUri(Uri.parse(furl));
pduBody.addPart(part);
sendRequest.setBody(pduBody);
final PduComposer composer = new PduComposer(context, sendRequest);
final byte[] bytesToSend = composer.make();
final String mmscUrl = "http://mmsc.monternet.com";
final String mmsProxy = "10.0.0.172";
final int mmsProt = 80;
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
try {
byte[] bytes = HttpUtils.httpConnection(
context,
4444L,
mmscUrl, // HttpUtils.mmscUrl,
bytesToSend,
HttpUtils.HTTP_POST_METHOD,
true,
mmsProxy, //HttpUtils.mmsProxy,
mmsProt); //HttpUtils.mmsPort //mmsPort //HttpUtils.mmsPort
} catch (IOException e) {
// TODO: handle exception
e.printStackTrace();
}
}
});
thread.start();
}
}以上把android源代码里的pau加入工程 可以编译通过,构建pdu包 然后httppost出去,还是不能发彩信。
public void buildPdu(final Context context) 不清楚是不是这个参数传错了导致的,要如何传呢