send sms trong android tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về tất cả các lĩnh vực kinh...
http://vietjack.com/android/index.jsp Copyright © vietjack.com Send SMS Android Trong Android, bạn sử dụng SmsManager API thiết bị xây dựng sẵn ứng dụng SMS để gửi SMS Trong chương này, chúng tơi minh họa hai ví dụ để gửi thông điệp SMS − SmsManager API Android SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage("phoneNo", null, "sms message", null, null); Ứng dụng SMS xây dựng sẵn Intent sendIntent = new Intent(Intent.ACTION_VIEW); sendIntent.putExtra("sms_body", "default content"); sendIntent.setType("vnd.android-dir/mms-sms"); startActivity(sendIntent); Tất nhiên, hai cần SEND_SMS permission Ngoài phương thức trên, có số phương thức quan trọng khác có sẵn lớp SmsManager Bảng liệt kê phương thức này: − Stt Phương thức & Miêu tả ArrayList divideMessage(String text) Phương thức phân chia thông điệp text thành số phần nhỏ, khơng lớn kích cỡ thông điệp SMS tối đa static SmsManager getDefault() Phương thức sử dụng để lấy instance mặc định SmsManager void sendDataMessage(String destinationAddress, String scAddress, short destinationPort, byte[] data, PendingIntent sentIntent, PendingIntent deliveryIntent) Phương thức sử dụng để gửi liệu dựa SMS tới cổng (port) http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com ứng dụng cụ thể void sendMultipartTextMessage(String destinationAddress, String scAddress, ArrayList parts, ArrayList sentIntents, ArrayList deliveryIntents) Gửi text có nhiều phần dựa SMS void sendTextMessage(String destinationAddress, String scAddress, String text, PendingIntent sentIntent, PendingIntent deliveryIntent) Gửi text dựa tên SMS Ví dụ Ví dụ sau minh họa cách sử dụng đối tượng SmsManager để gửi SMS tới số điện thoại cho Để thực nghiệm ví dụ này, bạn cần thiết bị Mobile thực trang bị với phiên Android OS nhất, không bạn gặp vấn đề với hình mơ Emulator Sau nội dung Main Activity file sửa đổi:src/com.example.tutorialspoint/MainActivity.java package com.example.tutorialspoint; import android.os.Bundle; import android.app.Activity; import android.telephony.SmsManager; import android.util.Log; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.Toast; public class MainActivity extends Activity { Button sendBtn; EditText txtphoneNo; EditText txtMessage; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); sendBtn = (Button) findViewById(R.id.btnSendSMS); txtphoneNo = (EditText) findViewById(R.id.editText); findViewById(R.id.editText2); View.OnClickListener() { txtMessage = (EditText) sendBtn.setOnClickListener(new public void onClick(View view) { sendSMSMessage(); } { Log.i("Send SMS", ""); }); } protected void sendSMSMessage() String phoneNo = txtphoneNo.getText().toString(); txtMessage.getText().toString(); String message = try { SmsManager smsManager = SmsManager.getDefault(); smsManager.sendTextMessage(phoneNo, null, message, null, null); Toast.makeText(getApplicationContext(), "SMS sent.", Toast.LENGTH_LONG).show(); } catch (Exception e) { http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com Toast.makeText(getApplicationContext(), "SMS faild, please try again.", Toast.LENGTH_LONG).show(); e.printStackTrace(); } @Override public boolean onCreateOptionsMenu(Menu menu) { the menu; this adds items to the action bar if it is present getMenuInflater().inflate(R.menu.main, menu); return true; } // Inflate } } Sau nội dung res/layout/activity_main.xml file: http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com Sau nội dung res/values/strings.xml để định nghĩa hai − tutorialspoint Settings Sau nội dung mặc định AndroidManifest.xml: Cuối cùng, bạn chạy ứng dụng Android vừa tạo http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com Bây giờ, bạn nhập số điện thoại thơng điệp text gửi tới số Cuối cùng, nhấn nút Send SMS để gửi Đảm bảo kết nối GSM/CDMA làm việc tốt Bạn lấy số SMS phân biệt dấu phảy sau bên chương trình mình, bạn phải parse chúng thành mảng chuỗi cuối bạn sử dụng vòng lặp để gửi thơng điệp tới tất số cho Đó cách bạn biết SMS Client riêng cho Phần tiếp minh họa cho bạn cách sử dụng SMS Client tồn để gửi SMS http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com Sử dụng Intent xây dựng sẵn để gửi SMS Bạn sử dụng Android Intent để gửi SMS việc gọi tính SMS xây dựng sẵn Android Khu vực giải thích phần khác đối tượng Intent mà cần thiết để gửi SMS Đối tượng Intent: Action để gửi SMS Bạn sử dụng ATION_VIEW để chạy SMS Client cài đặt thiết bị Android bạn Sau cú pháp để tạo Intent với ACTION_VIEW Intent smsIntent = new Intent(Intent.ACTION_VIEW); Đối tượng Intent: Dữ liệu/Kiểu để gửi SMS Để gửi SMS, bạn cần xác định smsto: dạng URI sử dụng phương thức setData() kiểu liệu vnd.android-dir/mms-sms sử dụng phương thức setType(), sau: − smsIntent.setData(Uri.parse("smsto:")); smsIntent.setType("vnd.androiddir/mms-sms"); Đối tượng Intent: Extra để gửi SMS Android hỗ trợ sẵn để thêm số điện thoại thông điệp text để gửi SMS, sau: − smsIntent.putExtra("address" smsIntent.putExtra("sms_body" , new String("0123456789;3393993300")); , "Test SMS to Angilla"); Ở đây, address sms_body phân biệt kiểu chữ nên xác định dạng ký tự nhỏ Bạn xác định nhiều số chuỗi đơn phân biệt dấu chấm phảy Ví dụ Ví dụ sau minh họa cho bạn cách sử dụng đối tượng Intent để chạy SMS Client để gửi SMS tới người nhận cho Sau nội dung Main Activity file sửa đổi:src/com.example.tutorialspoint/MainActivity.java package com.example.tutorialspoint; import android.net.Uri; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.util.Log; import android.view.Menu; import android.view.View; import android.widget.Button; import android.widget.Toast; public class MainActivity extends Activity { @Override protected void onCreate(Bundle http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.button); View.OnClickListener() { sendSMS(); } Log.i("Send SMS", ""); Button startBtn = (Button) startBtn.setOnClickListener(new public void onClick(View view) { }); } protected void sendSMS() { Intent smsIntent = new Intent(Intent.ACTION_VIEW); smsIntent.setData(Uri.parse("smsto:")); dir/mms-sms"); smsIntent.setType("vnd.android- smsIntent.putExtra("address" , new String ("01234")); smsIntent.putExtra("sms_body" , "Test "); try { startActivity(smsIntent); finish(); Log.i("Finished sending SMS ", ""); } catch (android.content.ActivityNotFoundException ex) { Toast.makeText(MainActivity.this, "SMS faild, please try again later.", Toast.LENGTH_SHORT).show(); } } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present getMenuInflater().inflate(R.menu.main, menu); return true; } } Sau nội dung res/layout/activity_main.xml file − android:textSize="30dp" Sau nội dung res/values/strings.xml để định nghĩa hai − tutorialspoint Settings Sau nội dung mặc định AndroidManifest.xml − Cuối cùng, bạn chạy ứng dụng Android vừa tạo http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com Chọn thiết bị mobile sau kiểm tra thiết bị mobile bạn hiển thị hình sau: http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com Bây sử dụng nút Compose SMS để chạy SMS Client xây dựng sẵn Android, hiển thị sau: http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 http://vietjack.com/android/index.jsp Copyright © vietjack.com Bạn sửa đổi trường mặc định cho sau sử dụng nút Send SMS để gửi SMS bạn tới người nhận http://vietjack.com/ Trang chia sẻ các bài học online miễn phí Page 1 ... android: layout_alignEnd="@+id/imageButton" android: hint="Enter SMS" />