快速业务通道

蓝牙开发之从手机走向PC【2】——手机与手机之间的通信实现 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20

蓝牙开发之从手机走向PC【2】——手机与手机之间的通信实现

时间:2011-01-29 博客园 royen

上篇文章讲述了开发环境的搭建和一些相关知识的介绍,这篇文章准备介绍下怎样实现手机和手机之间通过蓝牙实现互联通信的程序,然后接下来的日子可能会写个简单的通过蓝牙互联的手机小游戏(其他的事情比较多,加上笔者比较懒,呵呵,见谅~)。

这个小程序时个C/S结构的,但是只有一个Jar包。运行程序后的首页会有一个二选一选项(server或者client),当你选择server后单击 select按钮会进入服务器界面,单击setup按钮,那么便会开启服务器端的程序,并且循环监听来自客户端的蓝牙连接;而如果选择client选项,则会进入客户端界面,单击connect则会开始搜索周围的设备并遍历设备上的目标服务,如果搜索到服务的话则会连接上服务器,这时候你可以在文本框中输入信息并点击发送,服务器则会反馈相应的信息。

呵呵,虽然实现的功能简单,但是想要做更复杂的应用,这一步还是必须得走的~先看下我的程序文件结构吧:

---core                  //核心包名

---BlueMessage.java         //Midlet主类,程序入口

---components             //组件包名

---MainForm.java           //起始主界面(在此选择客户端还是服务器端)

---BlueClient.java              //客户端界面,继承自Form,实现CommandListener接口

---BlueServer.java          //服务器端界面,继承自Form,实现CommandListener接口

---bluetooth

---BlueClientService.java    //封装了客户端蓝牙服务的类,实现Runnable和DiscoveryListener接口

---BlueServerService.java  //封装了服务器端蓝牙服务的类,实现Runnable接口

好了,对于程序文件结构有了一定的了解后,来看下部分代码吧:

BlueMessage.Java文件:

/**   * Midlet应用程序主类   * @author royen   * @since 2010.1.24   */ public class BlueMessage extends MIDlet {      public BlueMessage() {          MainForm form=new MainForm(this);          Display.getDisplay(this).setCurrent(form);      }      /**       * 退出应用程序       */      public void ExitMidlet() {          try{              this.destroyApp(true);          }          catch(Exception ex){              System.out.println("occur exception "+ex.getMessage());          }      }      /**       * 导航到其他界面       * @param dis       */      public void NavigateTo(Displayable dis){          Display.getDisplay(this).setCurrent(dis);      }      protected void startApp() throws MIDletStateChangeException {      }      protected void destroyApp(boolean arg0) throws MIDletStateChangeException {      }      protectedvoid pauseApp() {          // TODO Auto-generated method stub}

蓝牙开发之从手机走向PC【2】——手机与手机之间的通信实现(2)

时间:2011-01-29 博客园 royen

该文件中在构造函数中指出了MainForm为初始界面,并提供了ExitMidlet和NavigateTo应用程序级的函数供调用。

components包中的MainForm.java文件:

/**   * 程序主界面   * @author royen   * @since 2010.1.24   */ public class MainForm extends Form implements CommandList

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号