Note that there are some explanatory texts on larger screens.

plurals
  1. POlaunch BroardcastReceiver class
    primarykey
    data
    text
    <p>I'm creating a SMS fording app. I currently got two classes; a main Activity class which will be used to modify setting and smsListener class which uses BroardcastReceiver. However, I can not work out how to launch the smsListener class. Code of smsListener class for ref</p> <pre><code>package sms.pack; import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.os.Bundle; import android.os.Environment; import android.telephony.SmsMessage; import android.util.Log; public class SmsListener extends BroadcastReceiver{ private SharedPreferences preferences; @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub if(intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")){ Bundle bundle = intent.getExtras(); //---get the SMS message passed in--- SmsMessage[] msgs = null; String device = "mobile_num_here"; //number to listen for String msg_from; if (bundle != null){ //---retrieve the SMS message received--- try{ Object[] pdus = (Object[]) bundle.get("pdus"); msgs = new SmsMessage[pdus.length]; for(int i=0; i&lt;msgs.length; i++){ msgs[i] = SmsMessage.createFromPdu((byte[])pdus[i]); msg_from = msgs[i].getOriginatingAddress(); String msgBody = msgs[i].getMessageBody(); if (msg_from == device) { savedata(msgBody); } } }catch(Exception e){ // Log.d("Exception caught",e.getMessage()); } } } } public void savedata(String data) { try { File root = Environment.getExternalStorageDirectory(); if (root.canWrite()){ File gpxfile = new File(root, "smsfile.txt");//remember change directory FileWriter gpxwriter = new FileWriter(gpxfile); BufferedWriter out = new BufferedWriter(gpxwriter); out.write(data); out.close(); } } catch (IOException e) { Log.e(data,"Could not write file " + e.getMessage()); } } } </code></pre> <p>I was planing to use intent to launch be that is not working, method below</p> <pre><code>public void startListening(View view) { Intent i = new Intent(); i.setClassName("sms.pack","sms.pack.SmsListener"); startActivity(i); } </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload