Broadcast Receiver (7)



BroadcastReceiver အသံုးျပဳ ျခင္း (7)
==========================
ဘာေန႔ အမွီ ညာေန႔အမွီ ထူးျခားတဲ့ ကိုယ္ပိုင္ apk ေလးေတြ လက္ေဆာင္
လုပ္ေပးခ်င္ပါတယ္ ဆိုတဲ့ ကေလးမ်ားအတြက္ BroadcastReceiver idea
==========
ပို႔လိုက္တဲ့ SMS စာသားေပၚ မူတည္ၿပီး TextToSpeech သေဘာမ်ိဳး ျမန္မာလို
အသံထြက္ ေျပာပါလိမ့္မယ္။ ကိုယ္ ကိုယ္တိုင္ အသံသြင္းထားတဲ့ စာသားေတြ
ျဖစ္ပါတယ္။
============
သေဘာတရား
===========
၁။ ကိုယ္ ေျပာလိုတဲ့ ျမန္မာလို စာသား အတိုေလးေတြကို အသံသြင္းထားပါ။ mp3
file ေတြကို အဂၤလိပ္ အေသးစာလံုးေတြနဲ႔ ရိုးရွင္းစြာ အမည္ေပးထားပါ။ ဥပမာ
ruok.mp3
imissu.mp3
wakeup.mp3
စသည္။
၂။ အဲဒီ ဖိုင္ေတြကို raw folder ေဆာက္ၿပီး ထည့္ထားပါ။
၃။ MyReceiver.java class မွာ MediaPlayer တခု ထည့္ပါ။
၄။ SMS ပို႔သူရဲ့ ဖုန္းနံပတ္နဲ႔ စာသားအရ သက္ဆိုင္ရာ audio file ကို play လိုက္ပါ။
၅။ ဒီ app ဟာ ကာယကံရွင္ ၂ဦးနဲ႔သာ သက္ဆိုင္ပါတယ္။
============

MyReceiver.java
==============
import android.media.*;
public class MyReceiver extends BroadcastReceiver {
MediaPlayer mp = new MediaPlayer();
int songid=0;
public void onReceive(Context context, Intent intent) {
// Retrieves a map of extended data from the intent.
final Bundle bundle = intent.getExtras();
try {
if (bundle != null) {
final Object[] pdusObj = (Object[]) bundle.get("pdus");
for (int i = 0; i < pdusObj.length; i++) {
SmsMessage currentMessage = SmsMessage.createFromPdu((byte[])
pdusObj[i]);
String phoneNumber = currentMessage.getDisplayOriginatingAddress();
String message = currentMessage.getDisplayMessageBody();
========

/if(phoneNumber.equals("091234567")){
switch (message){
case "ruok":
songid=R.raw.ruok;
break;
case "wakeup":
songid=R.raw.wakeup;
break;
case "imissu":
songid=R.raw.imissu;
break;
case "sleep":
songid=R.raw.sleep;
break;
}
//mp.reset();
mp=MediaPlayer.create(context,songid);
mp.start();
} else{
/*
Toast.makeText(context,
"senderNum: "+ phoneNumber + ", message: " + message,
Toast.LENGTH_LONG ).show();
*/
//do nothing if phone number is not yours.
}
//#############
} // end for loop
} // bundle is null
} catch (Exception e) {
Log.e("SmsReceiver", "Exception smsReceiver" +e);
}
}
}
===========
တိုးခ်ဲ႕ခ်င္ရင္
=========
သက္ဆိုင္ရာ SMS အရ
Activity တခု ဆြဲတင္ႏိုင္။
အဲဒီ activity မွာ ပံုေတြ စာေတြ ထည့္ႏိုင္။


#nnl

AIDE Android Lessons And Project Group
ဆရာ Nyi Nyi Lwin Post မွ ကူးယူတင္ထားပါသည္

#Credit ဆရာ Nyi Nyi Lwin


Comments

Popular posts from this blog

♡ မဂၤလာခြန္းဆက္ ♡

《《 ဝမ္းနည္းပါေၾကာင္း 》》