android - How to send text using AlarmManager and broadcast receiver? -


i writing app takes in edittext data user , sets alarm data collected using alarmmanager , send text using broadcast receiver. small toast stating alarm has been set works know data being gathered correctly never receive text. happening?

here main activity collect data , set alarm:

import java.util.calendar; import android.os.bundle; import android.app.activity; import android.app.alarmmanager; import android.app.pendingintent; import android.content.context; import android.content.intent; import android.view.menu; import android.view.view; import android.widget.edittext; import android.widget.toast;  public class mainactivity extends activity {      @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         setcontentview(r.layout.activity_main);     }       @override     public boolean oncreateoptionsmenu(menu menu) {         getmenuinflater().inflate(r.menu.main, menu);         return true;     }      public void schedulealarm(view v)     {         edittext timefield = (edittext) findviewbyid(r.id.edittext1);             int time = integer.parseint(timefield.gettext().tostring());         edittext dayfield = (edittext) findviewbyid(r.id.edittext2);             int day = integer.parseint(dayfield.gettext().tostring());         edittext monthfield = (edittext) findviewbyid(r.id.edittext3);             int month = integer.parseint(monthfield.gettext().tostring());           calendar calendar = calendar.getinstance();         calendar.set(calendar.month, month);         calendar.set(calendar.day_of_month, day);         calendar.set(calendar.hour_of_day, time);         calendar.set(calendar.minute, 0);         calendar.set(calendar.second, 0);          intent intentalarm = new intent(this, alarmreciever.class);         pendingintent pintent =  pendingintent.getbroadcast(this.getapplicationcontext(), 234324243,  intentalarm, pendingintent.flag_update_current);          alarmmanager alarmmanager = (alarmmanager) getsystemservice(context.alarm_service);          alarmmanager.set(alarmmanager.rtc_wakeup, calendar.gettimeinmillis(), pintent);         toast.maketext(this, ("alarm scheduled " + month + "/" + day + " @ " + time + "pm"), toast.length_long).show();      }      } 

here broadcast reciever:

import android.content.broadcastreceiver; import android.content.context; import android.content.intent; import android.telephony.smsmanager;  public class alarmreciever extends broadcastreceiver {      @override     public void onreceive(context context, intent intent)     {                    string phonenumberreciver="0000000000"; //my phone number entered here             string message="hi there later, see soon";             smsmanager sms = smsmanager.getdefault();              sms.sendtextmessage(phonenumberreciver, null, message, null, null);       } } 

i have made sure edit manifest these permissions:

<uses-permission android:name="com.android.alarm.permission.set_alarm"/> <uses-permission android:name="android.permission.send_sms"/> <receiver android:name=".alarmreciever"/> 

but here whole xml:

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"     package="com.example.bpa"     android:versioncode="1"     android:versionname="1.0" >      <uses-sdk         android:minsdkversion="11"         android:targetsdkversion="18" />      <uses-permission android:name="com.android.alarm.permission.set_alarm"/>      <uses-permission android:name="android.permission.send_sms"/>      <application         android:allowbackup="true"         android:icon="@drawable/ic_launcher"         android:label="@string/app_name"         android:theme="@style/apptheme" >         <activity             android:name="com.example.bpa.mainactivity"             android:label="@string/app_name" >             <intent-filter>                 <action android:name="android.intent.action.main" />                 <category android:name="android.intent.category.launcher" />             </intent-filter>         </activity>           <receiver android:name=".alarmreciever"/>      </application>  </manifest> 

try declaring receiver in manifest qualified package name:

<receiver android:name="com.myapp.alarmreciever"/> 

if still doesn't work may need specify action receiver handles, , when create alarm intent, set action intent. e.g:

       <receiver android:name="alarmreceiver" >             <intent-filter>                 <action android:name="com.myapp.mybroadcast" />             </intent-filter>         </receiver>  intent intentalarm = new intent(this, alarmreciever.class); intent.setaction("com.myapp.mybroadcast"); 

Comments

Popular posts from this blog

basic authentication with http post params android -

vb.net - Virtual Keyboard commands -

css - Firefox for ubuntu renders wrong colors -