我正在尝试使用Uri.parse("content://sms/inbox");
阅读所有收件箱短信。
我能够成功阅读所有邮件,并使用Cursor
获取所有列值。我的设备是双SIM卡设备。这是我的问题:
How can I know that given sms is belongs to which network operator? I want network operator name.
观察:
列名为sub_id
,其值为整数。对于所有邮件,我只获得5
的两个不同的值(在我的情况下,我得到4
或sub_id
)。 sub_id
值为5
的邮件属于一个网络运营商,sub_id
值为4
的邮件属于另一个网络运营商。
其他问题:sub_id
代表什么?如何使用sub_id
获取网络运营商名称?
我的应用程序的最低SDK级别是API 19。
答案 0 :(得分:0)
Android中有一个私有API: telephonyManager.getNetworkOperatorName(int subId)
它与公共API telephonyManager.getNetworkOperatorName相同,但带有SubID。
但是,它是一个私有API,因此您需要使用Java Reflection
来询问此请求