手机程序开发

如今手机已成为大众的交流工具。有关手机的程序开发越来越广泛,本节通过几个典型实例介绍如何利用短信猫发送、接收短信、远程控制计算机、业务员销售数据采集和短信息娱乐互动平台。

实例431 利用短信猫收发短信息

实例说明

短信猫是利用SIM卡发送短信的硬件设备,通过串口或USB接口(根据设备型号而定)与计算机相连。在程序中可以利用短信猫发送或接收短信。本例实现了利用短信猫收发短信息的功能。实例运行结果如图13.15所示。

文本框:
图13.15  利用短信猫收发短信息
技术要点

本例使用的是北京人大金仓信息技术有限公司的串口短信猫。在购买短信猫时会附带包括SDK的开发包,其中提供了操作短信猫的函数(封装在dllforvc.dll动态库中)。下面介绍操作短信猫的主要函数。

(1)GSMModemGetSnInfoNew函数

该函数获取短信猫注册需要的信息,代码如下:

    [DllImport("dllforvc.dll",

         EntryPoint = "GSMModemGetSnInfoNew",

         CharSet = CharSet.Ansi,

         CallingConvention = CallingConvention.StdCall)]

    public static extern string GSMModemGetSnInfoNew(string device, string baudrate);

参数说明如下。

l     device:通信端口,为null时系统会自动检测。

l     baudrate:通讯波特率,为null时系统会自动检测。

(2)GSMModemGetDevice函数

该函数获取当前的通讯端口,代码如下:

    [DllImport("dllforvc.dll",

         EntryPoint = "GSMModemGetDevice",

         CharSet = CharSet.Ansi,

         CallingConvention = CallingConvention.StdCall)]

    public static extern string GSMModemGetDevice();

(3)GSMModemGetBaudrate函数

该函数获取当前的通讯波特率,代码如下:

    [DllImport("dllforvc.dll",

         EntryPoint = "GSMModemGetBaudrate",

         CharSet = CharSet.Ansi,

         CallingConvention = CallingConvention.StdCall)]

    public static extern string GSMModemGetBaudrate();

(4)GSMModemInitNew函数

该函数用于初始化短信猫。语法如下:

    [DllImport("dllforvc.dll",

         EntryPoint = "GSMModemInitNew",

         CharSet = CharSet.Ansi,

         CallingConvention = CallingConvention.StdCall)]

    public static extern bool GSMModemInitNew(

        string device,

        string baudrate,

        string initstring,

        string charset,

        bool swHandshake,

        string sn);

参数说明如下。

l     device:标识通信端口,如果为NULL,系统会自动检测。

l     baudrate:标识通讯波特率,如果为NULL,系统会自动检测。

l     initstring:标识初始化命令,为NULL即可。

l     charset:标识通讯字符集,为NULL即可。

l     swHandshake:标识是否进行软件握手,为False即可。

l     sn:标识短信猫的授权号,需要根据实际情况填写。

(5)GSMModemSMSsend函数

该函数用于发送手机短信。语法如下:

    [DllImport("dllforvc.dll",

         EntryPoint = "GSMModemSMSsend",

         CharSet = CharSet.Ansi,

         CallingConvention = CallingConvention.StdCall)]

    public static extern bool GSMModemSMSsend(

        string serviceCenterAddress,

        int encodeval,

        string text,

        int textlen,

        string phonenumber,

        bool requestStatusReport);

参数说明如下。

l     serviceCenterAddress:标识短信中心号码,为NULL即可。

l     encodeval:标识短信息编码格式,如果为8,表示中文短信编码。

l     text:标识短信内容。

l     textlen:标识短信内容的长度。

l     phonenumber:标识接收短信的电话号码。

l     requestStatusReport:标识状态报告。

(6)GSMModemSMSReadAll函数

该函数取得所有短信息,包括SIM卡和手机中的短信息。返回的短信内容格式为电话号码1|短信内容1||电话号码2|短信内容2||:

    //接收短信息返回字符串格式为:手机号码|短信内容||手机号码|短信内容||

    //RD_opt为1表示接收短信息后不做任何处理,为0表示接收后删除信息

    [DllImport("dllforvc.dll",

         EntryPoint = "GSMModemSMSReadAll",

         CharSet = CharSet.Ansi,

         CallingConvention = CallingConvention.StdCall)]

    public static extern string GSMModemSMSReadAll(int RD_opt);

参数说明如下。

l     RD_opt:对读取后的短信息进行处理,0表示删除,1表示不做处理。

实现过程

(1)新建一个项目,命名为Ex13_14,默认窗体为Form1。

(2)在Form1窗体中,主要添加TextBox控件和Label控件,控件的数量及用途如图13.15所示,添加两个Button控件,分别用于发送短信息和接收短信息。

(3)主要程序代码。

将所使用的函数封装在GMS类中。代码如下:

class GMS

{

    //初始化gsm modem,并连接gsm modem

    [DllImport("dllforvc.dll",

         EntryPoint = "GSMModemInitNew",

         CharSet = CharSet.Ansi,

         CallingConvention = CallingConvention.StdCall)]

    public static extern bool GSMModemInitNew(

        string device,

        string baudrate,

        string initstring,

        string charset,

        bool swHandshake,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C++ 是一种通用的编程语言,可以用于开发各种类型的应用程序,包括手机应用程序。下面是一些开发手机程序的步骤: 1. 选择开发平台:根据你的需求和目标,选择一个适合的开发平台。目前比较流行的移动开发平台有 Android 和 iOS。 2. 学习移动开发框架:针对你选择的平台,学习相应的移动开发框架。比如,对于 Android 平台,你可以学习使用 Android Studio 和 Java 或 Kotlin 进行开发;对于 iOS 平台,你可以学习使用 Xcode 和 Objective-C 或 Swift 进行开发。 3. 掌握 C++ 编程语言:虽然 C++ 是一种通用的编程语言,但在移动应用开发中,你可能会用到 C++ 来编写一些底层的代码或者进行性能优化。因此,熟悉 C++ 编程语言是很有帮助的。 4. 开发应用逻辑:使用所选的开发平台和框架,利用 C++ 和其他相关语言(如 Java、Kotlin、Objective-C、Swift)来实现你的应用逻辑。这包括处理用户界面、功能实现、数据存储等。 5. 测试和调试:在开发过程中,进行测试和调试是很重要的。确保你的应用在不同设备上正常运行,并修复可能存在的 bug。 6. 发布应用:一旦你的应用开发完成并经过测试,你可以将其打包发布到应用商店,让用户可以下载和使用。 请注意,开发手机应用程序需要一定的学习和实践,建议你参考相关的教程和文档,并进行实际的练习和项目开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值