问题标签 [pdu]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
9180 浏览

android - 解析 SMS PDU

似乎是我需要解析在 SMS BroadcastReceiver 期间收到的 PDU 字节数组:

有人可以指出我该怎么做吗?

我知道可以使用 PDU 来处理SmsMessage.createFromPdu((byte[]) pdus[i])它,但这不是我想要的。我需要更精确地控制 pdu 字节。

0 投票
1 回答
4237 浏览

android - 为 Android 创建 PDU

我目前正在编写和应用程序,即发送/接收 SMS 消息。

出于单元测试的目的,我需要以编程方式创建 PDU。解码非常简单:

是否有任何适当的方法来以编程方式创建PDU?

0 投票
1 回答
1142 浏览

android - BroadcastReceiver.onReceive 是否每条短信只调用一次?

我有一个正在监听 android.provider.Telephony.SMS_RECEIVED 的 BroadcastReceiver。我要截取一些 SMS,所以我会 abortBroadcast(),但不是针对所有 SMS。

但是当我从意图中提取短信时,我想我可以获得不止一条短信?

messages 是一个 Object[],这是否意味着它可能是几条短信?或者我可以放心地假设它始终是一条短信。

我的问题是,如果我收到几条短信,而我只需要拦截一条,我就不能正确操作,因为如果我 abortBroadcast() 用户会丢失一些合法的短信,如果我不这样做,他会收到一些他不应该收到的短信.

我在安卓 2.2

0 投票
1 回答
1315 浏览

android - 如何在 Android 中从 PDU 更改为文本模式?

Android 的 SMS 以 PDU 格式发送消息。有没有办法以文本模式发送短信?

0 投票
1 回答
1905 浏览

android - 来自 wap 的视频彩信下载为 .qcp 和 .jpeg

我已经发送了一个 3gp 视频作为彩信,测试从 WAP 服务器下载它的能力。当我尝试从服务器下载它时,它分为 2 个单独的部分。一部分是 jpeg,另一部分是 qcp 音频文件。如果我将它作为 3gp 文件发送到 WAP 服务器,为什么它分成两个不同的 MMS 部分?

有没有可能是Android的MMS内容提供者检测到qcp文件并将其与jpeg组合成3gp容器格式?

我已经撕开了 Android MMS 应用程序中的每一行代码,并且没有进行任何转换。MMS 应用程序所做的只是下载 pdu,分离各个部分,并将它们作为字节数组保存到 MMS 内容提供程序。我可以自信地说,MMS 应用程序不会对这些部件做任何事情,它们作为单独的字节数组提交给手机内容提供商。

0 投票
1 回答
5822 浏览

c# - 在 C# 中将特殊字符转换为 PDU 字符串的 7 位数据

我正在尝试创建一个 PDU 编码器,它需要我:

  1. 将字符串中的每个字符转换为 ASCII 值
  2. 将 ASCII 值转换为 7 位二进制
  3. 使用这种方法- 将 7 位转换为 8 位。我通过获取第一个 septet 并从下一个 septet 的末尾添加直到第一个 8 位(如 url 中所示)在一个函数中执行此操作。这基本上贯穿始终。
  4. 使用 8 位二进制我可以将我的 PDU 字符串转换为十六进制。

使用时所有这些都可以正常工作:

  1. ASCII = Convert.ToInt32(char)
  2. Convert.ToString(ASCII, 2)= 7位
  3. SeptetToOctet(7bit)= 8bit(我的功能)
  4. Convert.ToString(Convert.ToInt32(8bit, 2), 16).ToUpper()(如果它仅转换为 1 个字符,我将添加 0)

现在我的问题来了,当尝试转换特殊字符时,比如丹麦语'ø',你会得到 248 的 ASCII 值,这Convert.ToString(248, 2)给了我11111000(8 位)。因此,要么我需要知道如何强制将“ø”转换为 7 位二进制,要么需要修改 SeptetToOctet 转换(提供的 URL 上的转换),但我现在确实有足够的关于二进制和二进制转换的知识来知道如何正确处理。

0 投票
1 回答
438 浏览

java-me - 非 Java 手机(如 android 和 gsm 调制解调器)未收到从 j2me 发送的短信

我需要使用 j2me 应用程序中的短信将“用户名,密码,0,1,1,1,0,1,0”之类的模式发送到不受我控制的 gsm 调制解调器。它用于储存食物。

如果有人正常使用任何手机向提供的 gsm 调制解调器号码发送短信(例如您如何向任何人发送短信),它将回复答复。

我的问题是任何 java 手机都接收到从我的 j2me 应用程序发送的短信,但 gsm 调制解调器没有收到它(因为我没有收到回复并且没有保留食物)。与 gsm 调制解调器 android 手机一样,无法接收我的短信。

我使用典型的 j2me 库来发送短信。我试过TextMessage,没有运气。然后我尝试了 BinaryMessage,它没有被 gsm 调制解调器接收,但 android 收到了它!

另一件事是我找不到任何关于 sms pdu 的完整来源、文档或示例。二进制payLoad是使用BinaryMessage发送的所有完整短信格式吗?

最后,我现在可以使用 BinaryMessage 发送普通短信吗?有什么例子吗?

提前致谢。问候,阿里。

0 投票
1 回答
8081 浏览

unicode - 为串联的 Unicode SMS 添加 UDH

是我学习在PDU中发送多部分短信的链接,非常好的教程。但是如果我想发送Unicode短信怎么办?来自开发人员的评论之一:

是的,DCS 应该是0×08,UDL 应该是八位字节(最终是 1 + UDHL + 2 * 字符数)。此外,您不必像在 GSM-7 案例中那样插入填充。我知道您已经设法发送 UCS-2(未连接)消息,所以它一定是您缺少的一些小东西。如果您希望可以张贴您的 PDU,以便我检查……</p>

杰伦

看来我不需要为消息添加 1 位填充。但是,如果我使用与普通 SMS 相同的 UDH 格式,它只会显示未知字符。谁能给我一些提示?

这是带有中文字符的示例 PDU,但应该有错误..

0041000B910661345542F60000A00500030302010008044F60597D

谢谢。

0 投票
1 回答
1104 浏览

iphone - 以编程方式使用 iphone 发送具有 PDU 格式的连接短信

无论如何以编程方式在iPhone中以PDU格式发送连接的短信?AFAIK android 能够做到这一点。请指教,真的需要把这件事弄清楚。

谢谢。

0 投票
2 回答
2695 浏览

java - Java中是否有任何可用的SMS Pdu解析器?

任何人都从 byte[] 数组中知道 Java 中可用的 Pdu 解析器,我主要关心的是让用户数据头 (UDH) 符合 GSM 标准。我的意思是得到它正确。