Java-SmsLib短信

SmsLib库帮助我们大大的简化了串口的编程

http://code.google.com/p/smslib/wiki/Installation

要使用SmsLib就要了解JAVA串口通信

Javax.comm简介

Javax.comm简介
    Javax.comm是Sun公司提供的,用于开发平台独立的通讯应用程序的扩展API。(ps:这里javax的x很准确地表明了它是一个扩展包,而不是核心包(core package),但由于历史原因,javax下的并不都是扩展包,比如swing包已经是Java核心架构的一部分了,不过为了与Java1.1编码兼容,仍使用javax.swing。)javax.comm可以访问RS232接口(串口)及有限制地访问IEEE-1284(并口)。

下载
    需要到其官方主页http://java.sun.com/products/javacomm/下载这个API,目前的最新版本是3.0。不过可惜的是,Sun目前没有推出此API在Windows平台下的3.0版本,主页上列出的三个版本,分别是运行在x86和Sparc结构下的Solaris系统,以及x86下的Linux系统。要下载Windows版本只能去寻找较老的版本了。我所找到的2个网址是http: //llk.media.mit.edu/projects/cricket/software/javaSerial.zip(两个文件夹里面有所需的 3个文件),http://mdubuc.freeshell.org/Jolt/javacomm20-win32.zip和(完整的2.0版本,还有 examples)。

安装
    这里的所谓安装就是把三个重要的文件放到指定的目录下。
    将下载的文件解压缩后,在\javacomm20-win32\commapi目录下有必需的三个文件comm.jar,javax.comm. properties和win32comm.dll。将文件comm.jar拷贝到%JAVA_HOME%\jre\lib\ext;文件 javax.comm. properties拷贝到%JAVA_HOME%\jre\lib; 文件win32comm.dll拷贝到%JAVA_HOME%\bin。注意%JAVA_HOME%是jdk的路径,而非jre。

 

RXTX包

rxtx包,可以完美替代javax.comm.如果想要在linux上跑,rxtx也可以满足您

  • download ftp://ftp.qbang.org/pub/rxtx/rxtx-2.1-7-bins-r2.zip
  • unzip it
  • copy rxtxSerial.dll into your c:\program files\java\jre-version\bin dir
  • copy RXTXcomm.jar into your c:\program files\java\jre-version\lib\ext dir
  • change all references from 'javax.comm' to 'gnu.io'
  • recompile
  • test

//"COM1", 9600, "Nokia", "6310i"
  SerialModemGateway gateway = new SerialModemGateway("sms", "COM1", 9600, "Nokia", "6310i");
  gateway.setInbound(true);
  gateway.setOutbound(true);
  gateway.setSimPin("0000");
  // Explicit SMSC address set is required for some modems.
  // Below is for VODAFONE GREECE - be sure to set your own!
  gateway.setSmscNumber("");
  Service.getInstance().setOutboundMessageNotification(outboundNotification);
  Service.getInstance().addGateway(gateway);
  Service.getInstance().startService();
  System.out.println();
  System.out.println("Modem Information:");
  System.out.println("  Manufacturer: " + gateway.getManufacturer());
  System.out.println("  Model: " + gateway.getModel());
  System.out.println("  Serial No: " + gateway.getSerialNo());
  System.out.println("  SIM IMSI: " + gateway.getImsi());
  System.out.println("  Signal Level: " + gateway.getSignalLevel() + " dBm");
  System.out.println("  Battery Level: " + gateway.getBatteryLevel() + "%");
  System.out.println();

 Service.getInstance().stopService();

http://blog.csdn.net/djsl6071/category/296859.aspx

你可能感兴趣的:(java,linux,swing,ext,Nokia)