Tôi đã thấy nhiều câu hỏi hỏi cách nhận số điện thoại của người gửi SMS chứ không phải số điện thoại của người nhận. Tôi đã sử dụng các công cụ trên trang web này để tạo ra một PDU và có thể nhìn thấy số điện thoại của người nhận trong đó:Cách nhận số điện thoại của người nhận SMS trong Android
Useful PDU details and PDU translation tool
Tuy nhiên, tôi không thấy bất cứ nơi nào trong lớp SmsMessage cung cấp bởi Android nơi tôi có thể nhận được số điện thoại của người nhận. Lý do tôi muốn làm điều này là tôi có một điện thoại Dual SIM, nhưng không thấy bất cứ nơi nào trong Android, nơi tôi có thể xác định cổng SIM nào đang được sử dụng cho SMS đến. Ít nhất, tôi muốn xem từng tin nhắn SMS và xác định số điện thoại họ đã gửi đến.
Câu hỏi này dường như rất giống với tôi nhưng không có câu trả lời:
How to get SMS recipient's phone number in Android
Câu hỏi của tôi là khác nhau bởi vì tôi đã trình bày chi tiết một liên kết đến một trang web về PDU, mà có thể hữu ích cho việc trích xuất số điện thoại tạo thành các byte PDU thô mà lớp SmsMessage cung cấp.
Bất kỳ ý tưởng nào?
Tôi cũng rất quan tâm đến điều này, vì lý do tương tự, nhưng dường như không ai trả lời bất kỳ câu hỏi nào trong số bốn hoặc năm câu hỏi về vấn đề này trên SO. Tuy nhiên, nếu thông tin nằm trong PDU, API Android cung cấp khả năng nhận PDU thô của thư (xem [tại đây] (http://developer.android.com/reference/android/telephony/SmsMessage.html# getPdu())). Chúng ta có thể sử dụng nó để lấy PDU, giải mã nó theo cách thủ công và tìm số người nhận không? – ShankarG
Nhưng một vấn đề - Tôi không thể thấy bất kỳ số người nhận nào khi tôi giải mã PDU trong trang web đó ... – ShankarG