The SMS received action string is hidden — and therefore an unsupporte dịch - The SMS received action string is hidden — and therefore an unsupporte Việt làm thế nào để nói

The SMS received action string is h

The SMS received action string is hidden — and therefore an unsupported API. As such, it is subject to change with any future platform release. It is not good practice to use unsupported APIs because doing so carries significant risk. Be cautious when using unsupported platform features because they are subject to change in future platform releases.
For an application to listen for SMS Broadcast Intents, it needs to specify the receive_sms manifest permission:

The SMS Broadcast Intent includes the incoming SMS details. To extract the array of SmsMessage objects packaged within the SMS Broadcast Intent bundle, use the pdu key to extract an array of SMS PDUs (protocol data units — used to encapsulate an SMS message and its metadata), each of which represents an SMS message, from the extras Bundle. To convert each PDU byte array into an SMS Message object, call SmsMessage.createFromPdu, passing in each byte array:
Bundle bundle = intent.getExtras(); if (bundle != null) {
0bject[] pdus = (0bject[]) bundle.get("pdus");
SmsMessage[] messages = new SmsMessage[pdus.length]; for (int i = 0; i < pdus.length; i++)
messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
}
Each SmsMessage contains the SMS message details, including the originating address (phone num¬ber), timestamp, and the message body, which can be extracted using the getOriginatingAddress, getTimestampMillis, and getMessageBody methods, respectively:
public class MySMSReceiver extends BroadcastReceiver {
©Override
public void onReceive(Context context, Intent intent) {
Bundle bundle = intent.getExtras(); if (bundle != null) {
0bject[] pdus = (0bject[]) bundle.get("pdus");
SmsMessage[] messages = new SmsMessage[pdus.length]; for (int i = 0; i < pdus.length; i++)
messages[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
for (SmsMessage message : messages) {
String msg = message.getMessageBody(); long when = message.getTimestampMillis();
String from = message.getOriginatingAddress();
Toast.makeText(context, from + " : " + msg,
Toast.LENGTH_LONG).show(); 
To listen for incoming messages, register your SMS Broadcast Receiver using an Intent Filter that listens for the android.provider.Telephony.SMS_RECEIVED action String. In most circumstances you’ll want to register this in the application manifest to ensure your application can always respond to incoming SMS messages.





Simulating Incoming SMS Messages in the Emulator
Two techniques are available for simulating incoming SMS messages in the emulator. The first was described previously in this section: you can send an SMS message from one emulator to another by using its port number as its phone number.
Alternatively, you can use the Android debug tools (introduced in Chapter 2, “Getting Started”) to simulate incoming SMS messages from arbitrary numbers, as shown in Figure 17-1.
0/5000
Từ: -
Sang: -
Kết quả (Việt) 1: [Sao chép]
Sao chép!
Chuỗi hành động tin nhắn SMS nhận được là ẩn- và do đó một API không được hỗ trợ. Như vậy, nó có thể thay đổi với bất kỳ phát hành trong tương lai nền tảng. Nó không phải là thực hành tốt để sử dụng không được hỗ trợ API vì làm như vậy mang nguy cơ đáng kể. Thận trọng khi sử dụng tính năng hỗ trợ nền tảng vì họ có thể thay đổi trong bản phát hành tương lai nền tảng.Cho một ứng dụng để lắng nghe cho tin nhắn SMS Broadcast Intents, nó cần phải chỉ định các receive_sms biểu hiện sự cho phép:Android:name="Android.Permission.RECEIVE_SMS"/>Tin nhắn SMS Broadcast Intent bao gồm các tin nhắn SMS đến chi tiết. Để trích xuất các mảng của các đối tượng SmsMessage đóng gói trong các gói tin nhắn SMS Broadcast mục đích, sử dụng phím pdu để trích xuất một loạt các tin nhắn SMS PDU (giao thức đơn vị dữ liệu — được sử dụng để đóng gói một tin nhắn SMS và siêu dữ liệu), mỗi trong số đó đại diện cho một tin nhắn SMS, từ các tính năng bổ sung gói. Để chuyển đổi mỗi mảng byte PDU vào một đối tượng tin nhắn SMS, gọi SmsMessage.createFromPdu, đi qua trong mỗi mảng byte:Gói bó = intent.getExtras(); Nếu (bó! = null) {}0bject [] PDU = (0bject[]) bundle.get("pdus");Tin nhắn [] SmsMessage = new SmsMessage[pdus.length]; cho (int i = 0; i < pdus.length; i ++)tin nhắn [i] = SmsMessage.createFromPdu((byte[]) pdus[i]);}Mỗi SmsMessage có chứa các chi tiết thông báo tin nhắn SMS, bao gồm cả địa chỉ nguồn gốc (điện thoại num¬ber), dấu thời gian và nội dung thư có thể được tách ra bằng cách sử dụng getOriginatingAddress, getTimestampMillis và getMessageBody phương pháp, tương ứng:công cộng lớp MySMSReceiver kéo dài BroadcastReceiver {}© Ghi đèkhu vực void onReceive (Context bối cảnh, Intent intent) {}Gói bó = intent.getExtras(); Nếu (bó! = null) {}0bject [] PDU = (0bject[]) bundle.get("pdus");Tin nhắn [] SmsMessage = new SmsMessage[pdus.length]; cho (int i = 0; i < pdus.length; i ++)tin nhắn [i] = SmsMessage.createFromPdu((byte[]) pdus[i]);cho (SmsMessage tin nhắn: tin nhắn) {}Chuỗi msg = message.getMessageBody(); Khi Long = message.getTimestampMillis();Chuỗi từ = message.getOriginatingAddress();Toast.makeText (bối cảnh, từ + ":" + bột ngọt,Toast.LENGTH_LONG).show(); Để lắng nghe cho các tin nhắn, đăng ký của bạn tin nhắn SMS Broadcast Receiver sử dụng một bộ lọc Intent lắng nghe cho các hành động android.provider.Telephony.SMS_RECEIVED chuỗi. Trong hầu hết trường hợp, bạn sẽ muốn đăng ký điều này trong vận đơn để đảm bảo các ứng dụng của bạn có thể luôn luôn trả lời các tin nhắn SMS tin nhắn.Mô phỏng các tin nhắn SMS tin nhắn trong các mô phỏngHai kỹ thuật có sẵn để mô phỏng các tin nhắn SMS tin nhắn trong các mô phỏng. Lần đầu tiên được mô tả trước đó trong phần này: bạn có thể gửi một tin nhắn SMS từ một giả lập khác bằng cách sử dụng số hiệu cổng của mình như số điện thoại.Ngoài ra, bạn có thể sử dụng các công cụ gỡ lỗi Android (được giới thiệu trong chương 2, "Bắt đầu") để mô phỏng các tin nhắn SMS tin nhắn từ số lượng tùy ý, như minh hoạ trong hình 17-1.
đang được dịch, vui lòng đợi..
Kết quả (Việt) 2:[Sao chép]
Sao chép!
Các tin nhắn SMS nhận được hành động chuỗi được ẩn - và do đó một API được hỗ trợ. Như vậy, nó có thể thay đổi với bất kỳ phát hành nền tảng tương lai. Nó không phải là thực hành tốt để sử dụng các API được hỗ trợ bởi vì làm như vậy mang nguy cơ đáng kể. Hãy thận trọng khi sử dụng tính năng nền tảng được hỗ trợ bởi vì họ có thể thay đổi trong phiên bản nền tảng tương lai.
Đối với một ứng dụng để lắng nghe cho SMS Broadcast Intents, nó cần phải xác định receive_sms phép biểu hiện:
android: name = "android.permission.RECEIVE_SMS"
/>
Các Ý định SMS Broadcast bao gồm các chi tiết tin nhắn SMS. Để giải nén các mảng của các đối tượng SmsMessage đóng gói trong các bó Ý định SMS Broadcast, sử dụng phím PDU để trích xuất một loạt các PDU SMS (đơn vị dữ liệu giao thức - được sử dụng để đóng gói một tin nhắn SMS và siêu dữ liệu của nó), mỗi trong số đó đại diện cho một tin nhắn SMS, từ các tính năng bổ sung Bundle. Để chuyển đổi từng mảng PDU byte vào một tin nhắn SMS đối tượng tin nhắn, gọi SmsMessage.createFromPdu, đi qua trong từng mảng byte:
bó Bundle = intent.getExtras (); if (bó = null) {
0bject [] PDU = (0bject []) bundle.get ( "PDU");
SmsMessage [] thông điệp = SmsMessage mới [pdus.length]; for (int i = 0; i <pdus.length; i ++)
thông điệp [i] = SmsMessage.createFromPdu ((byte []) PDU [i]);
}
Mỗi SmsMessage chứa các chi tiết tin nhắn SMS, bao gồm địa chỉ nguồn gốc (điện thoại num¬ber), dấu thời gian và nội dung thư, có thể được trích xuất bằng getOriginatingAddress, getTimestampMillis, và phương pháp getMessageBody, tương ứng:
public class MySMSReceiver kéo dài BroadcastReceiver {
© Override
public void onReceive (bối cảnh bối cảnh, ý định ý định) {
Bundle bó = intent.getExtras (); if (bó = null) {
0bject [] PDU = (0bject []) bundle.get ( "PDU");
SmsMessage [] thông điệp = SmsMessage mới [pdus.length]; for (int i = 0; i <pdus.length; i ++)
thông điệp [i] = SmsMessage.createFromPdu ((byte []) PDU [i]);
for (nhắn SmsMessage: tin nhắn) {
string msg = message.getMessageBody ( ); dài khi = message.getTimestampMillis ();
String từ = message.getOriginatingAddress ();
Toast.makeText (bối cảnh, từ + ":" + msg,
Toast.LENGTH_LONG) .show (); 
Để nghe thông báo đến, đăng ký SMS của bạn Broadcast Receiver sử dụng một bộ lọc Ý định là lắng nghe cho các chuỗi hành động android.provider.Telephony.SMS_RECEIVED. Trong hầu hết các trường hợp, bạn sẽ muốn đăng ký này trong biểu hiện ứng dụng để đảm bảo ứng dụng của bạn luôn luôn có thể đáp ứng với tin nhắn SMS.





Mô phỏng Incoming Tin nhắn SMS trong Emulator
Hai kỹ thuật có sẵn để mô phỏng các tin nhắn SMS trong mô phỏng. Việc đầu tiên được mô tả trước đó trong phần này: bạn có thể gửi một tin nhắn SMS từ một giả lập khác bằng cách sử dụng số cổng của nó như là số điện thoại của mình.
Ngoài ra, bạn có thể sử dụng các công cụ debug Android (giới thiệu trong chương 2, "Bắt đầu") để mô phỏng các tin nhắn SMS từ số lượng tùy ý, như thể hiện trong hình 17-1.
đang được dịch, vui lòng đợi..
 
Các ngôn ngữ khác
Hỗ trợ công cụ dịch thuật: Albania, Amharic, Anh, Armenia, Azerbaijan, Ba Lan, Ba Tư, Bantu, Basque, Belarus, Bengal, Bosnia, Bulgaria, Bồ Đào Nha, Catalan, Cebuano, Chichewa, Corsi, Creole (Haiti), Croatia, Do Thái, Estonia, Filipino, Frisia, Gael Scotland, Galicia, George, Gujarat, Hausa, Hawaii, Hindi, Hmong, Hungary, Hy Lạp, Hà Lan, Hà Lan (Nam Phi), Hàn, Iceland, Igbo, Ireland, Java, Kannada, Kazakh, Khmer, Kinyarwanda, Klingon, Kurd, Kyrgyz, Latinh, Latvia, Litva, Luxembourg, Lào, Macedonia, Malagasy, Malayalam, Malta, Maori, Marathi, Myanmar, Mã Lai, Mông Cổ, Na Uy, Nepal, Nga, Nhật, Odia (Oriya), Pashto, Pháp, Phát hiện ngôn ngữ, Phần Lan, Punjab, Quốc tế ngữ, Rumani, Samoa, Serbia, Sesotho, Shona, Sindhi, Sinhala, Slovak, Slovenia, Somali, Sunda, Swahili, Séc, Tajik, Tamil, Tatar, Telugu, Thái, Thổ Nhĩ Kỳ, Thụy Điển, Tiếng Indonesia, Tiếng Ý, Trung, Trung (Phồn thể), Turkmen, Tây Ban Nha, Ukraina, Urdu, Uyghur, Uzbek, Việt, Xứ Wales, Yiddish, Yoruba, Zulu, Đan Mạch, Đức, Ả Rập, dịch ngôn ngữ.

Copyright ©2025 I Love Translation. All reserved.

E-mail: