I try to develope a simple Broadcastreceiver.
Here's my code:
public class MyClass extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Bundle extras = intent.getExtras();
if (extras != null) {
String state = extras.getString(TelephonyManager.EXTRA_STATE);
Log.w("DEBUG", state);
if (state.equals(TelephonyManager.EXTRA_STATE_RINGING)) {
String phoneNumber = extras
.getString(TelephonyManager.EXTRA_INCOMING_NUMBER);
Toast.makeText(context, phoneNumber, Toast.LENGTH_LONG).show();
Log.w("DEBUG", phoneNumber);
}
}
}
}
Manifest.xml:
<uses-sdk android:minSdkVersion="10" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<receiver android:name=".MyClass">
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE"></action>
</intent-filter>
</receiver>
</application>
All i want to do is to 'toast' the Number i'm calling (or when i get called).
Isn't it working that way? Its the only code i use at the moment. Just one Broadcastreceiver running in the background and fired with a phone-event.
Thanks, prexx
You need to add this permission to the manifest:
ReplyDelete<uses-permission android:name="android.permission.READ_PHONE_STATE">