僑光科技大學 蔡存孝老師 解說參考:http://rs2.ocu.edu.tw/~tsay/files/304.png
AndroidManifest.xml設定
Permissions裡 "add" (User Permissions) Name = android.permission.RECEIVE_SMS
Application裡 "add" (Receiver) Name = GDA03_SM_Receiver 再 "add" Intent Filter 再 "add" (Action) Name = android.provider.Telephony.SMS_RECEIVED
GDD03_SM_Receiver - BroadcastReceiver
package COM.TQC.GDD03 ;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.widget.Toast;
public class GDD03_SM_Receiver extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
// TODO Auto-generated method stub
String str="";
Bundle bundle = intent.getExtras();
Object[] pdus=(Object[])bundle.get("pdus");
SmsMessage[] m = new SmsMessage[pdus.length];
for(int i=0; i < pdus.length; ++i) {
m[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
str+="接收來電>\n";
str+=m[i].getDisplayOriginatingAddress();
str+="\n---簡訊內容---\n";
str+=m[i].getMessageBody();
}
Toast.makeText(context, str, Toast.LENGTH_LONG).show();
Intent intent2 = new Intent(context, GDD03.class);
intent2.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent2);
}
}
沒有留言:
張貼留言