- 浏览: 163244 次
-
最新评论
-
bihongliang:
并且服务端一直报错:javax.bluetooth.Bluet ...
android 和 PC端 进行蓝牙通信 demo -
bihongliang:
你好,博主,我是windows10 64 位系统,加载了 64 ...
android 和 PC端 进行蓝牙通信 demo -
白云飘飘2016:
fcylf 写道win7 64位,pc端测试,报错:Nativ ...
android 和 PC端 进行蓝牙通信 demo -
fcylf:
win7 64位,pc端测试,报错:Native Librar ...
android 和 PC端 进行蓝牙通信 demo -
abc天残:
http://www.iteye.com/images/smi ...
android 从服务器下载更新新版本软件 demo
居然不能发表SMS Cat的中文名?!
这个是 SMS Cat设备
需要插入SIM卡,所以,是需要付短信费的。
插好USB和电源后,会安装好驱动,可以在设备管理可以查看到端口号
也有一种软件可以测试端口是否可连接:secureCRT
新建好connection后,输入AT测试,如果OK就OK。
好了,端口确定没问题了。
接着,在你的JDK的bin路径下放一个win32com.dll
在JDK的lib中放一个comm.jar和javax.comm.properties
需要的文件都在附件SMSCat.rar中。
OK,所有都准备完了,现在开始代码测试。
demo测试需要用到的jar
sms.properties#sms properties
Message.comId=modem.com19 Message.com=COM19 Message.baudRate=9600 Message.manufacturer=wavecom Message.model= Message.simPin=0000
注意:这里的端口COM19必须和你上面的端口对应。
SMSService.java
/** * Copyright(C) 2012 GZ ISCAS ALL Rights Reserved */ package com.royal.SMSCat; import java.util.Properties; import org.smslib.Message.MessageEncodings; import org.smslib.OutboundMessage; import org.smslib.Service; import org.smslib.modem.SerialModemGateway; import com.royal.utils.PropertiesUtil; /** * 描述:SMS Cat服务类 */ public class SMSService { /** * 私有静态实例 */ private static SMSService instance = null; /** * 是否开启服务 */ private boolean isStartService = false; /** * 私有构造方法 */ private SMSService() { } /** * 获取实例(单例模式) * * @return */ public static SMSService getInstance() { if (instance == null) { instance = new SMSService(); } return instance; } /** * 开启短信服务 * * @param path * 配置文件路径 */ public void startService(String path) { System.out.println("开始初始化SMS服务!"); // 加载文件属性 Properties p = null; try { p = PropertiesUtil.getProperties(path); } catch (Exception e) { System.out.println("加载属性文件出错:" + e.getMessage()); return; } // 初始化网关,参数信息依次为:COMID,COM号,比特率,制造商,Modem模式 SerialModemGateway gateway = new SerialModemGateway(p.getProperty("Message.comId"), p.getProperty("Message.com"), Integer.parseInt(p.getProperty("Message.baudRate")), p.getProperty("Message.manufacturer"), p.getProperty("Message.model")); gateway.setInbound(true); gateway.setOutbound(true); gateway.setSimPin(p.getProperty("Message.simPin")); OutboundNotification outboundNotification = new OutboundNotification(); Service service = Service.getInstance(); if (service == null) { System.out.println("初始化SMS服务失败!"); return; } service.setOutboundMessageNotification(outboundNotification); try { service.addGateway(gateway); // 开启服务 service.startService(); System.out.println("初始化SMS服务成功!"); isStartService = true; } catch (Exception e) { System.out.println("开启SMS服务异常:" + e.getMessage()); } } /** * 停止SMS服务 */ public void stopService() { try { Service.getInstance().stopService(); } catch (Exception e) { System.out.println("关闭SMS服务异常:" + e.getMessage()); } isStartService = false; } /** * 发送短信 * * @param toNumber * 手机号码 * @param message * 短信内容 */ public void sendMessage(String toNumber, String message) { if (!isStartService) { System.out.println("尚未开启SMS服务!"); return; } // 封装信息 OutboundMessage msg = new OutboundMessage(toNumber, message); msg.setEncoding(MessageEncodings.ENCUCS2); try { // 发送信息 Service.getInstance().sendMessage(msg); } catch (Exception e) { System.out.println("SMS服务发送信息发生异常:" + e.getMessage()); isStartService = false; } } }
OutboundNotification.java
package com.royal.SMSCat; import org.smslib.AGateway; import org.smslib.IOutboundMessageNotification; import org.smslib.OutboundMessage; /** * 封装发送短信类 */ public class OutboundNotification implements IOutboundMessageNotification { public void process(AGateway gateway, OutboundMessage msg) { System.out.println("Outbound handler called from Gateway: " + gateway.getGatewayId()); } }
SMSCatClient.java
package com.royal.SMSCat; public class SMSCatClient { /** * 测试 * * @param args */ public static void main(String[] args) { String path = "D:\\sms.properties"; SMSService.getInstance().startService(path); SMSService.getInstance().sendMessage("13800138000", "测试 Test!"); //没必要的时候没停止服务,因为端口占用着 SMSService.getInstance().stopService(); } }
测试结果自己找个手机号测吧
看见了吗?控制台中的服务(红色标识)还在跑着,也就是端口还在占用着;服务没断,可以不用重新初始化。
- SMSCat.rar (1.3 MB)
- 下载次数: 265
发表评论
-
各地图API坐标系统比较与转换
2015-08-07 15:34 1046/** * 各地图API坐标系统比较与转换; * W ... -
Netty Websocket 例子
2015-01-08 14:36 1838Netty框架(Netty-3.5.7.Final)来实现W ... -
基于CXF的webService本地数据交互----PC端(四)
2013-04-26 17:20 1619不想新建项目了(可以参考前面一、二、三),就在现有的 ... -
LDAP简单的增删查改
2013-03-04 14:08 31351. 认证信息: package com.royal ... -
pushlet 推送框架简单使用Demo
2013-01-30 14:48 3282人懒了,有点不想写了,网上有好例子,帮忙宣传一下。 ... -
jersey demo
2012-08-28 16:33 2232同样是Maven构建的项目,不解释。 项目 ... -
验证码例子(jcaptcha插件的使用)
2012-07-20 11:45 2676和上一篇验证码的例子(kaptcha插件的使用)类 ... -
验证码例子(kaptcha插件的使用)
2012-07-19 17:35 2873使用kaptcha插件实现验证码小例子(顺便加了spri ... -
springMVC security Demo
2012-07-03 10:33 2535springMVC 结合权限控制。 项目目录结构 ... -
Apache Mina 入门Demo
2012-06-11 14:45 8197什么是Mina,用Mina可以干什么? 官网 ... -
springMVC Demo
2012-06-07 16:32 1641项目目录结构图: 项目前需要用到的jar包 ... -
List 对象排序 Demo
2012-04-19 11:18 939List 对象排序 Demo 项目目录结构: ... -
restful webservice in springMVC Demo
2012-04-18 17:24 3054Maven restful webservice spring ... -
dom4j简单的XML文件遍历 demo
2012-04-10 15:48 1595随便找一个简单的xml文件,存放进自己的项目中 data.x ... -
基于CXF的webService本地数据交互----PC端与Android端(三)
2012-03-31 09:49 2489本篇基于(二)的基础上续写 主要是JSON的数据交 ... -
bitbucket免费在线库的简用
2012-03-22 10:46 4553bitbucket相当于SVN;版本库的管理,在线免费存储。一 ... -
Checkstyle代码检测插件简用
2012-03-16 13:17 15091.Checkstyle特点简介 a.自动化代码检测 ... -
基于CXF的webService本地数据交互----PC端与Android端(二)
2012-03-15 17:02 1547服务端以maven的形式创建项目。 项目创建好后 ... -
maven自定义本地库位置.m2/repository
2012-03-14 16:56 10372默认的maven本地库位置是:${user.home}/.m2 ... -
jrebel插件实现热部署
2012-03-09 11:59 5308一、eclipse中 jrebel 插件的安装: ...
相关推荐
短信猫(SMS Cat)是一种可以连接到计算机并通过串行端口(如RS232或USB)发送和接收短信的设备。在企业级通信、自动化系统、远程监控等领域,短信猫因其稳定性和低成本而被广泛应用。通过编写Java程序来控制短信猫...
SMS4国密JAVA加密解密完整代码,无异常java类文件,导入即用。Convert.java 内部字符串进制转换类,SMS4.java 国密加密解密处理方法类。TestMain.java 测试类,调用 encrypt 加密 decode 解密
通过CAT,智能卡可以动态地改变终端设备的行为,例如在屏幕上显示特定信息、收集用户输入、启动电话呼叫或发送短消息服务(SMS)。 ### 技术规格与标准 《ETSI TS102 223》详细定义了UICC上的CAT功能,包括如何...
wangtengfei-hn_EmployeesExample_23540_1745868671962
scratch少儿编程逻辑思维游戏源码-汽车冲突.zip
scratch少儿编程逻辑思维游戏源码-棱镜.zip
少儿编程scratch项目源代码文件案例素材-直升机坠毁.zip
输入法优化与定制_五笔编码编辑与词库管理_Rime输入法引擎与86极点码表_跨平台五笔码表编辑器工具_for_macOS与Windows系统_支持用户自定义词条添加删除与排序_提供
少儿编程scratch项目源代码文件案例素材-主题乐园大亨.zip
scratch少儿编程逻辑思维游戏源码-迷失在像素平原.zip
少儿编程scratch项目源代码文件案例素材-纸格通关 云变量.zip
wanjunshe_Python-Tensorflow_12888_1745868924470
scratch少儿编程逻辑思维游戏源码-深入海底.zip
驾校自动化_网页自动化爬虫技术_Python27多线程HTTP请求模拟_龙泉驾校2014版约车系统自动预约助手_通过模拟登录和循环请求实现自动约车功能_支持失败自动递增车号重试_
scratch少儿编程逻辑思维游戏源码-南瓜危机.zip
scratch少儿编程逻辑思维游戏源码-皮博冒险者.zip
基于c++开发的网络嗅探器,重点对TCP、UDP、ARP、IGMP、ICMP 等数据包进行分析,实现捕捉前过滤、数据包统计、流量统计等功能+源码+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档 基于c++开发的网络嗅探器,重点对TCP、UDP、ARP、IGMP、ICMP 等数据包进行分析,实现捕捉前过滤、数据包统计、流量统计等功能+源码+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档~ 基于c++开发的网络嗅探器,重点对TCP、UDP、ARP、IGMP、ICMP 等数据包进行分析,实现捕捉前过滤、数据包统计、流量统计等功能+源码+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档 基于c++开发的网络嗅探器,重点对TCP、UDP、ARP、IGMP、ICMP 等数据包进行分析,实现捕捉前过滤、数据包统计、流量统计等功能+源码+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档 基于c++开发的网络嗅探器,重点对TCP、UDP、ARP、IGMP、ICMP 等数据包进行分析,实现捕捉前过滤、数据包统计、流量统计等功能+源码+项目文档,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用,详情见md文档
用于释放电脑的内存,很好用。
scratch少儿编程逻辑思维游戏源码-气球足球.zip