android - Android 短信状态的 70 值代表什么?

标签 android kotlin sms

我在 Kotlin 中有一些 Android 代码正在获取存储的 SMS 消息的状态:

val status = cursor.getInt(cursor.getColumnIndexOrThrow(Telephony.Sms.STATUS))

稍后,我将此值与不同的常量进行比较以查看状态的含义:

print(when (status) {
    Telephony.Sms.STATUS_COMPLETE -> "complete"
    Telephony.Sms.STATUS_FAILED -> "failed"
    Telephony.Sms.STATUS_NONE -> "none"
    Telephony.Sms.STATUS_PENDING -> "pending"
    else -> status.toString()
})

通常,我会得到诸如“complete”、“none”和“pending”之类的字符串。但是,有时会返回“70”,这意味着状态不匹配任何常量 found listed here .这里的 70 是什么意思?

最佳答案

在深入挖掘源代码后(特别是 SmsMessage 类,status 字段)我发现了这个 document .当您滚动到第 68 页的第 9.2.3.15 节时,您将看到 SMS 的可能状态代码列表。您的代码 (70) 表示

1000110 SM Validity Period Expired

关于android - Android 短信状态的 70 值代表什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53829769/

相关文章:

java - 接收或重新发送android收到的广播

java - 当调用 Activity 被终止或销毁时,Android 服务将停止工作

Android:弹出键盘时,布局不可见。我该如何解决这个问题?

java - 空指针异常

android - 将消息从数据库移动到收件箱

meteor - 如何使用Twilio从用户的手机号码发送文本?

java - 如何在Android中的另一个线程中运行一个方法?

android - Firebase ML 套件给出 FirebaseMLException : Waiting for the text recognition model to be downloaded. 请稍候

android - 有没有办法重用 Job 实例?

kotlin - 对列表中数字的子集求和