`
yuanyao
  • 浏览: 148297 次
  • 性别: Icon_minigender_1
  • 来自: 就那小山沟
社区版块
存档分类
最新评论

Android SMS

 
阅读更多

SMS PDU

7-bit编码:发送普通ASCII字符;
8-bit编码:通常用于发送数据消息;
UCS2编码:用于发送Unicode字符。

而一般的PDU编码由A B C D E F G H I J K L M十三项组成,其中这十三项的释义分别为:

A:短信息中心地址长度,2位十六进制数(1字节)。
B:短信息中心号码类型,2位十六进制数。
C:短信息中心号码,B+C的长度将由A中的数据决定。
D:文件头字节,2位十六进制数。
E:信息类型,2位十六进制数。
F:被叫号码长度,2位十六进制数。
G:被叫号码类型,2位十六进制数,取值同B。
H:被叫号码,长度由F中的数据决定。
I:协议标识,2位十六进制数。
J:数据编码方案,2位十六进制数。
K:有效期,2位十六进制数。
L:用户数据长度,2位十六进制数。
M:用户数据,其长度由L中的数据决定。J中设定采用UCS2编码,这里是中英文的Unicode字符。

而其PDU协议说明如下:

PDU编码协议简单说明
例1 发送:SMSC号码是+8613800250500,对方号码是13693092030,消息内容是“Hello!”。从手机发出的PDU串可以是
08 91 68 31 08 20 05 05 F0 11 00 0D 91 68 31 96 03 29 30 F0 00 00 00 06 C8 32 9B FD 0E 01
对照规范,具体分析:
分段 含义 说明
08 SMSC地址信息的长度 共8个八位字节(包括91)
91 SMSC地址格式(TON/NPI) 用国际格式号码(在前面加‘+’)
68 31 08 20 05 05 F0 SMSC地址 8613800250500,补‘F’凑成偶数个
11 基本参数(TP-MTI/VFP) 发送,TP-VP用相对格式
00 消息基准值(TP-MR) 0
0D 目标地址数字个数 共13个十进制数(不包括91和‘F’)
91 目标地址格式(TON/NPI) 用国际格式号码(在前面加‘+’)
68 31 96 03 29 30 F0 目标地址(TP-DA) 8613693092030,补‘F’凑成偶数个
00 协议标识(TP-PID) 是普通GSM类型,点到点方式
00 用户信息编码方式(TP-DCS) 7-bit编码
00 有效期(TP-VP) 5分钟
06 用户信息长度(TP-UDL) 实际长度6个字节
C8 32 9B FD 0E 01 用户信息(TP-UD) “Hello!”
例2 接收:SMSC号码是+8613800250500,对方号码是13693092030,消息内容是“你好!”。手机接收到的PDU串可以是
08 91 68 31 08 20 05 05 F0 84 0D 91 68 31 96 03 29 30 F0 00 08 30 30 21 80 63 54 80 06 4F 60 59 7D 00 21
对照规范,具体分析:
分段 含义 说明
08 地址信息的长度 个八位字节(包括91)
91 SMSC地址格式(TON/NPI) 用国际格式号码(在前面加‘+’)
68 31 08 20 05 05 F0 SMSC地址 8613800250500,补‘F’凑成偶数个
84 基本参数(TP-MTI/MMS/RP) 接收,无更多消息,有回复地址
0D 回复地址数字个数 共13个十进制数(不包括91和‘F’)
91 回复地址格式(TON/NPI) 用国际格式号码(在前面加‘+’)
68 31 96 03 29 30 F0 回复地址(TP-RA) 8613693092030,补‘F’凑成偶数个
00 协议标识(TP-PID) 是普通GSM类型,点到点方式
08 用户信息编码方式(TP-DCS) UCS2编码
30 30 21 80 63 54 80 时间戳(TP-SCTS) 2003-3-12 08:36:45  +8时区
06 用户信息长度(TP-UDL) 实际长度6个字节
4F 60 59 7D 00 21 用户信息(TP-UD) “你好!”
若基本参数的最高位(TP-RP)为0,则没有回复地址的三个段。从Internet上发出的短消息常常是这种情形。
注意号码和时间的表示方法,不是按正常顺序顺着来的,而且要以‘F’将奇数补成偶数。

在PDU Mode中,可以采用三种编码方式来对发送的内容进行编码,它们是7-bit、8-bit和UCS2编码。7-bit编码用于发送普通的ASCII字符,它将一串7-bit的字符(最高位为0)编码成8-bit的数据,每8个字符可“压缩”成7个;8-bit编码通常用于发送数据消息,比如图片和铃声等;而UCS2编码用于发送Unicode字符。PDU串的用户信息(TP-UD)段最大容量是140字节,所以在这三种编码方式下,可以发送的短消息的最大字符数分别是160、140和70。这里,将一个英文字母、一个汉字和一个数据字节都视为一个字符。

分享到:
评论

相关推荐

    Sms.rar_MMS_android sms_android 短信_sms_sms android

    这个名为"Sms.rar"的压缩包包含了一个关于Android SMS(Short Message Service)功能的源码实现,特别提到了MMS(Multimedia Messaging Service)的支持,这允许发送和接收包含多媒体内容的消息。下面将详细解释这些...

    Android SMS 发送 接收及格式

    Android SMS 发送 接收及格式

    SMS.rar_android_android sms.zip_sms_sms android_sms java

    在Android平台上,短信服务(SMS)是移动应用开发中的一个重要组成部分。这个压缩包"SMS.rar"和"android_android sms.zip"包含的可能是一系列与在Android系统上编程短信功能相关的资源和代码示例。让我们深入探讨...

    android sms的发送以及接受

    在Android系统中,短信服务(SMS)是移动应用开发中不可或缺的一部分,允许用户发送和接收文本消息。本文将深入探讨如何在Android平台上实现短信的发送与接收功能。 首先,我们需要了解Android SMS服务的基础知识。...

    SMS.zip_android_android sms_sms

    标题中的“SMS.zip_android_android sms_sms”表明这是一个与Android操作系统中的短信功能相关的压缩包,包含的是与接收和处理短信有关的代码或资源。在Android系统中,短信服务(SMS)是移动设备通信的一个核心部分...

    Android-SMS.rar_android_android sms_android tts SMS_android 短信_s

    在Android平台上,短信服务(SMS)是移动应用开发中的一个重要组成部分。这个名为"Android-SMS.rar"的压缩包文件显然包含了一个与短信处理相关的Android应用,特别是实现了短信语音播报的功能,这可以极大地便利用户...

    sms.zip_Android 数据库_android_android sms_sms

    标题中的“sms.zip_Android 数据库_android_android sms_sms”暗示了这是一个关于Android短信功能的SQLite数据库开发相关的资源包。下面将详细介绍这个主题中的关键知识点。 1. **SQLite数据库**:SQLite是Android...

    Android SMS 短信内容显示在一个 泡泡 形状的窗口中.zip

    Android SMS 短信内容显示在一个 泡泡 形状的窗口中.zip Android SMS 短信内容显示在一个 泡泡 形状的窗口中.zip Android SMS 短信内容显示在一个 泡泡 形状的窗口中.zip Android SMS 短信内容显示在一个 泡泡 形状...

    SMS.rar_android_android sms_sms_sms java

    在Android操作系统中,SMS(Short Message Service)是用于发送和接收短信的核心功能。这个"SMS.rar"文件可能包含了关于如何在Android平台上处理SMS消息、管理联系人以及与SIM卡交互的相关代码示例或教程。接下来,...

    android SMS

    在Android平台上,短信服务(SMS)是移动应用开发中的一个重要组成部分,它允许用户发送和接收文本消息。在本文中,我们将深入探讨如何在Android中实现短信功能,包括相关的API、权限管理、创建发送短信的Intent以及...

    SMS.rar_android_android sms

    本文将深入探讨如何在Android中实现短信监听功能,基于标题"SMS.rar_android_android sms"和描述"Android开发小程序,实现对系统短信的监听"。 首先,我们要知道在Android中监听短信需要用到`BroadcastReceiver`类...

    android sms 调用示例

    在Android平台上,短消息服务(SMS)是应用与用户或者应用之间进行文本通信的主要方式之一。这个"android sms 调用示例"是关于如何在Android应用中集成短信功能的教程,包括发送短信和监听短信。下面我们将深入探讨...

    SMS.rar_android_android sms_android 短信_短信拦截

    在Android 6.0(API级别23)及以上版本,需要在运行时请求READ_SMS和WRITE_SMS权限,否则应用无法读取或写入短信。在Manifest.xml中声明权限的同时,需要在代码中使用RequestPermissions()方法请求用户授权。 六、...

    SMSPopup-1.1.0.rar_android_android sms_sms android_smspopup.apk_

    【标题】"SMSPopup-1.1.0.rar" 是一个针对Android系统的短信管理工具,主要用于提升用户在处理SMS(Short Message Service,短信)时的体验。此版本为1.1.0,包含了名为“smspopup.apk”的应用程序文件。 【描述】...

    Sms.zip_android sms_android 短信_sms_安卓_安卓短信拦截

    而“Sms.zip”这个压缩包文件可能包含了关于Android短信拦截和转发的实现代码或者资源。接下来,我们将深入探讨Android短信服务,特别是如何实现拦截和转发机制。 1. **Android SMS服务**:Android提供了一个名为`...

    Android SMS SDK v 1.3.1.zip

    Android SMS SDK v1.3.1 是一个专为Android平台设计的短信服务开发工具包,它为开发者提供了方便快捷的接口,以便在Android应用程序中集成发送、接收和处理短信的功能。这个版本的SDK可能包含了更新的特性、优化的...

    android sms send

    "android sms send"这一主题涵盖了如何在Android环境中发送短信,这通常涉及到编程接口(API)的使用,调试技巧以及不同设备间的兼容性问题。下面将详细介绍这个知识点。 首先,Android系统提供了一个名为`...

    sms.rar_android sms_pdu_pdu sms_短信_短信 pdu

    关键词“android sms_pdu_pdu sms”揭示了这个压缩包内容与Android系统中处理短信(SMS)相关的PDU(Protocol Data Unit)编码和解码有关。PDU是GSM通信协议中的一种数据格式,它在短信传递过程中扮演着关键角色。 ...

Global site tag (gtag.js) - Google Analytics