`
woshizn
  • 浏览: 209783 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

blackberry j2me 发送SMS短信

阅读更多

blackberry发送短信的应用可以调用

javax.wireless.messaging.MessageConnection;

来完成。

 

我首先尝试了用用数据报datagram发送2进制文件的形式,在我的黑莓8800上测试,遇乱码。

public
SendSms() {
try
{
_dc = (DatagramConnection)Connector.open(_openString);
byte
[] data = msg.getBytes();
Datagram d = _dc.newDatagram(_dc.getMaximumLength());
d.setAddress("//" + addr);
_dc.send(d);
}
catch
( IOException e) {
}S
ystem.exit(0);
}

 

然后改用javax.wireless.messaging.MessageConnection;的形式

成功发送任意字符(包括中文)

 

代码如下:

package com.kennan.contactList;

import javax.wireless.messaging.MessageConnection;
import javax.wireless.messaging.TextMessage;

public final class Sender extends Thread {

	private MessageConnection _mc;
	private String _address;
	private String _message;

	public Sender(MessageConnection mc) {
		this._mc = mc;
		start();
	}

	public synchronized void send(String addr, String msg) {
		_address = addr;
		_message = msg;
		notify();
	}

	public synchronized void run() {
		while (true) {
			// If no client to deal, wait until one connects
			if (_message == null) {
				try {
					wait();
				} catch (InterruptedException e) {
				}
			}

			try {
				TextMessage msg;

				// Are we a sender thread for the client ? If so then there's
				// no address parameter
				if (_address == null) {
					msg = (TextMessage) _mc
							.newMessage(MessageConnection.TEXT_MESSAGE);
				} else {
					msg = (TextMessage) _mc.newMessage(
							MessageConnection.TEXT_MESSAGE, _address);
				}
				msg.setPayloadText(_message);
				_mc.send(msg);

			} catch (Exception ioe) {
				ioe.printStackTrace();
			}

			// Completed client handling, return handler to pool and
			// mark for wait
			_message = null;
		}
	}
}

 

调用代码

package com.kennan.contactList;

import java.io.IOException;

import javax.microedition.io.Connector;
import javax.wireless.messaging.MessageConnection;

public class SendSMS {

	public static void sendSMS(String phoneNumber, String messageContext) {

		try {
			MessageConnection mc = (MessageConnection) Connector
					.open("sms://" + phoneNumber);
			Sender sender = new Sender(mc);
			sender.send(null, messageContext);
		} catch (IOException e) {

			e.printStackTrace();
		}
	}
}
 
分享到:
评论

相关推荐

    j2me收發短信.rar_bluetooth chat_j2me_j2me sms_sms_短信 j2me

    1. 发送短信:在J2ME中,我们使用JSR-120(Mobile Information Services API)中的`javax.wireless.messaging`包来处理短信发送。首先,创建一个`MessageConnection`对象,然后通过`TextMessage`或`...

    SMS.rar_blackberry_java sms_send SMS in j2me_sms blackberry_手机 短

    其中,“send_sms_in_j2me”表明发送短信的逻辑是通过J2ME实现的,而“sms_blackberry”则表明它是针对Blackberry设备的短信应用。 在压缩包的文件列表中,我们看到“www.pudn.com.txt”可能是一个文档,可能是...

    phone_SMS.zip_Sms j2me_j2me sms_java 短信_phone s_发短信

    4. **设备接口**:为了发送短信,程序需要与手机的硬件接口进行通信,这通常涉及到J2ME的MIDP(Mobile Information Device Profile)层,它提供了一套API来访问设备功能。 5. **源代码分析**:"SMS"文件很可能是...

    J2ME SMS 收发短信例子的源代码

    发送短信的过程大致如下: 1. **初始化MessageConnection**:通过调用`Connector.open()`方法,传入适当的URL(如`"sms://+1234567890"`,这里的数字是目标手机号码)来打开一个到短信服务的连接。 2. **创建...

    J2me 手机发送短信示例

    **J2ME手机发送短信示例** 在移动设备开发领域,Java 2 Micro Edition(J2ME)是一种广泛使用的平台,用于创建可以在各种小型设备上运行的应用程序,包括早期的智能手机和平板电脑。本示例将详细介绍如何使用J2ME...

    用J2ME接收、发送SMS短信的实例源代码

    在本文中,我们将深入探讨如何使用J2ME来实现SMS短信的接收和发送功能,并基于提供的实例源代码进行学习。 首先,要理解J2ME中的SMS通信,我们需要了解两个关键概念:PDU(Protocol Data Unit)和AT命令。PDU是SMS...

    smd.rar_Sms j2me_j2me_j2me sms_send SMS_send sms j2me code

    标题中的“smd.rar_Sms j2me_j2me_j2me sms_send SMS_send sms j2me code”表明这是一个关于J2ME平台上的SMS(Short Message Service,短信服务)发送和接收的代码库或者教程。J2ME,全称为Java 2 Micro Edition,是...

    j2me 中直接 发送短信类。 SMS类。

    单独封装好的类。调用是只有两个参数。一个是 手机号码 还有一个 是 短信内容。非常简单。调试一切OK。

    ReceiveSMS.zip_ReceiveSMS_SMS receive j2me_j2me_j2me sms_www.rec

    此外,如果需要发送短信,还可以使用WMA的`send()`方法,但要注意发送短信通常会涉及费用,并可能受到运营商的限制。 总结起来,J2ME的无线消息API为开发者提供了一种在移动设备上处理短信的途径。通过理解WMA的...

    j2me手机发送短信 接收短信

    1. **创建SMSConnection**:首先,我们需要创建一个SMSConnection对象,这是发送短信的基础。通过调用`javax.wireless.messaging.MessageConnection`类的`open("sms://+电话号码")`方法来建立连接。 2. **创建...

    SendSMS.zip_SendSms_j2me_j2me sms_send sms a_sms using java

    标题“SendSMS.zip_SendSms_j2me_j2me sms_send sms a_sms using java”暗示了这个压缩包包含了一个关于如何在J2ME中使用Java发送短信的示例或库。描述进一步明确了这个主题,指出它是通过无线消息API(Wireless ...

    j2me短信发送软件

    j2me短信发送平台,与大家一起分享我的成果,谢谢支持,非常感激。。。。

    J2ME 发短信 源码

    总之,J2ME发送短信涉及了对MIDP和CLDC的理解,以及正确配置和使用`SMSManager`对象。通过这个源码示例,开发者可以学习到实际的短信发送流程,并将其应用于自己的J2ME应用中。同时,Myeclipse和EclipseME插件提供了...

    SMS.rar_j2me sms

    4. **SMS API**:在J2ME环境中,发送和接收短信通常需要使用JSR-120(Mobile Information Services API)或JSR-205( Multimedia Messaging Service - MMS API)。这些API提供了创建、发送和接收文本消息的接口。 5...

    SMS-JAVA-test-program.rar_j2me sms

    7. **权限管理**:在J2ME应用中,发送短信可能需要用户的权限,这需要在MIDlet的`MIDlet-Permissions`标签中声明,例如`javax.microedition.io.Connector.sms`。 8. **事件处理和回调**:发送短信通常是异步操作,...

    j2me模拟手机短信发送源码

    "j2me模拟手机短信发送源码" 这个标题指出我们讨论的是一个使用Java 2 Micro Edition (J2ME) 平台编写的代码示例,其目的是模拟手机发送短信的功能。J2ME是Java的一个子集,主要用于开发嵌入式设备和移动设备的应用...

    SSMSe.rar_j2me sms

    2. **Connection API**:J2ME的连接API允许应用程序访问网络资源,包括GSM(Global System for Mobile Communications)和GPRS(General Packet Radio Service)网络,这些是手机用于发送短信的基础。 3. **javax....

    j2me sms简单程序

    发送短信的基本步骤包括: 1. 打开`MessageConnection`,指定目标地址。 2. 创建`TextMessage`对象,设置短信内容和目标电话号码。 3. 将`TextMessage`通过`MessageConnection`发送出去。 4. 关闭`...

    java j2me接收,发送短信

    发送短信 (SMSSend.java, SMSSender.java) 发送短信则涉及`javax.wireless.messaging.TextMessage`接口。以下是发送短信的基本流程: 1. **打开连接**:首先,你需要打开一个`MessageConnection`到目标电话号码。...

    sms.rar_The Program_j2me sms

    它可能会包含创建`SerialConnection`实例,设置通信参数,编码短信内容,以及实际发送短信的函数。 4. `SerialConnectionException.java`:这是一个异常类,用于捕获和处理在操作`SerialConnection`过程中可能出现...

Global site tag (gtag.js) - Google Analytics