SMS 如何工作(在 Android 台设备上)?
How does SMS work (with Android devices)?
我们正在开发一个基于 Google 的 Rich Messaging Platform (RCS) 的应用程序,我想问一些关于如何将 SMS 传送到 Android 设备的具体问题。
理解题:
SMS 消息是否传送到 Android OS 或消息传递应用程序?
是否将 SMS 消息推送(即推送通知)到 Android OS 或消息传递应用程序中?如果没有,它是否被拉动 - 以及如何拉动?
就信息的传递方式而言,彩信的工作方式是否与短信相同?
重要问题:
如果我们正在开发一个 RCS 应用程序来替代 SMS。是否可以直接处理接收短信?也就是说,与 SMS 的交互将完全绕过 Android OS and/or 另一个(默认)消息传递应用程序。
编辑 - 添加了以下问题:
这 post 表示我们可以收听传入的 SMS/MMS 消息。所以,这里有一个问题:
我们的应用程序能否成为唯一监听 SMS/MMS 消息的应用程序?
如果上述问题的答案是否定的,那么(用户在我们的应用程序上阅读消息后),我们的应用程序是否可以向其他短信应用程序发送消息以删除批次计数并设置要阅读的消息?
如果我们的应用程序不使用直接启动,SMS/MMS 是否会因为无法交付而丢失,无论我们的应用程序是否是唯一的 SMS/MMS 应用程序?
而且,这个问题的理解问题:
据我所知,SMS/MMS 是电话系统的一部分,而 RCS 不是。你能确认我的理解是正确的吗?
谢谢!
据我所知,SMS 在 Android:
上是这样工作的
Are SMS messages delivered into the Android OS or the messaging app?
SMS 消息被发送到 Android OS,因为它们是 telephony/cellular 系统的一部分。它们绝对不会被推送到任何特定的消息传递应用程序,因为传入消息直接从蜂窝提供商发送到设备(又名 OS/firmware)。用户与之交互的消息传递应用程序只是一个 "front",用于在收到消息时显示 send/show 消息并与用户交互。您实际上可以更改 Android 上的默认消息传递应用程序,这进一步证明 SMS 实际上是 OS.
的一部分
Are SMS messages being pushed (ie. Push Notifications) into the
Android OS or messaging app? If not, is it pulled - and how?
很像传入的 phone 电话,SMS 消息是 "pushed" 到设备,但不是您可能熟悉的方式,如推送通知(即 GCM)。推送通知的概念存在于 IP 层;也就是说,它是一种在 Internet 上运行的服务。设备接收的 SMS 消息推送类型是电话系统的一部分。这就是为什么,例如,设备在关闭移动数据的情况下仍然可以接收短信,但无法接收 Facebook 消息的通知。
Do MMS work the same way as SMS, in terms of how messages are
delivered?
是的,它们的工作方式与上述基本相同,只是它们有一些额外的协议来处理从蜂窝网络接收的数据以获取图像等内容。数据仍然在此电话网络上传输,而不是通过 Internet(大部分)传输。现在有一些 MMS 的实现可以借助 Internet 来更快地获取和加载图像,但这可能是特定于运营商的。
If we are developing an RCS app to replace SMS. Is it possible to deal
with receiving SMS directly?
这取决于你打算做什么。您无法从根本上更改电话网络上的 SMS 协议,因为这不在您作为应用程序的控制范围内。但是,您可以创建一个应用程序来监控和收听 OS 中收到的短信。您可以查看此 post 以了解如何执行此操作。如果您想创建自己的 RCS,您几乎必须通过 Internet 进行。 WhatsApp 等服务巧妙地结合了电话短信和标准互联网消息传递,创造了一种看似无缝的体验。如果没有关于您要构建的内容的更多上下文,我将无法提供更多帮助。
最后,您应该只将原生 SMS 视为 phone 的一部分。如需进一步了解 SMS 的工作原理,我建议阅读 SMS Wikipedia page。我希望我能够回答你的一些问题!
我们正在开发一个基于 Google 的 Rich Messaging Platform (RCS) 的应用程序,我想问一些关于如何将 SMS 传送到 Android 设备的具体问题。
理解题:
SMS 消息是否传送到 Android OS 或消息传递应用程序?
是否将 SMS 消息推送(即推送通知)到 Android OS 或消息传递应用程序中?如果没有,它是否被拉动 - 以及如何拉动?
就信息的传递方式而言,彩信的工作方式是否与短信相同?
重要问题:
如果我们正在开发一个 RCS 应用程序来替代 SMS。是否可以直接处理接收短信?也就是说,与 SMS 的交互将完全绕过 Android OS and/or 另一个(默认)消息传递应用程序。
编辑 - 添加了以下问题:
这 post 表示我们可以收听传入的 SMS/MMS 消息。所以,这里有一个问题:
我们的应用程序能否成为唯一监听 SMS/MMS 消息的应用程序?
如果上述问题的答案是否定的,那么(用户在我们的应用程序上阅读消息后),我们的应用程序是否可以向其他短信应用程序发送消息以删除批次计数并设置要阅读的消息?
如果我们的应用程序不使用直接启动,SMS/MMS 是否会因为无法交付而丢失,无论我们的应用程序是否是唯一的 SMS/MMS 应用程序?
而且,这个问题的理解问题:
据我所知,SMS/MMS 是电话系统的一部分,而 RCS 不是。你能确认我的理解是正确的吗?
谢谢!
据我所知,SMS 在 Android:
上是这样工作的Are SMS messages delivered into the Android OS or the messaging app?
SMS 消息被发送到 Android OS,因为它们是 telephony/cellular 系统的一部分。它们绝对不会被推送到任何特定的消息传递应用程序,因为传入消息直接从蜂窝提供商发送到设备(又名 OS/firmware)。用户与之交互的消息传递应用程序只是一个 "front",用于在收到消息时显示 send/show 消息并与用户交互。您实际上可以更改 Android 上的默认消息传递应用程序,这进一步证明 SMS 实际上是 OS.
的一部分Are SMS messages being pushed (ie. Push Notifications) into the Android OS or messaging app? If not, is it pulled - and how?
很像传入的 phone 电话,SMS 消息是 "pushed" 到设备,但不是您可能熟悉的方式,如推送通知(即 GCM)。推送通知的概念存在于 IP 层;也就是说,它是一种在 Internet 上运行的服务。设备接收的 SMS 消息推送类型是电话系统的一部分。这就是为什么,例如,设备在关闭移动数据的情况下仍然可以接收短信,但无法接收 Facebook 消息的通知。
Do MMS work the same way as SMS, in terms of how messages are delivered?
是的,它们的工作方式与上述基本相同,只是它们有一些额外的协议来处理从蜂窝网络接收的数据以获取图像等内容。数据仍然在此电话网络上传输,而不是通过 Internet(大部分)传输。现在有一些 MMS 的实现可以借助 Internet 来更快地获取和加载图像,但这可能是特定于运营商的。
If we are developing an RCS app to replace SMS. Is it possible to deal with receiving SMS directly?
这取决于你打算做什么。您无法从根本上更改电话网络上的 SMS 协议,因为这不在您作为应用程序的控制范围内。但是,您可以创建一个应用程序来监控和收听 OS 中收到的短信。您可以查看此 post 以了解如何执行此操作。如果您想创建自己的 RCS,您几乎必须通过 Internet 进行。 WhatsApp 等服务巧妙地结合了电话短信和标准互联网消息传递,创造了一种看似无缝的体验。如果没有关于您要构建的内容的更多上下文,我将无法提供更多帮助。
最后,您应该只将原生 SMS 视为 phone 的一部分。如需进一步了解 SMS 的工作原理,我建议阅读 SMS Wikipedia page。我希望我能够回答你的一些问题!