Я пытаюсь разработать простой Broadcastreceiver.
Вот мой код:
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>
Все, что я хочу сделать, - это'toast' номер, по которому я звоню (или когда мне звонят).
Разве это не работает таким образом?Это единственный код, который я использую на данный момент.Только один Broadcastreceiver работает в фоновом режиме и запускает телефонное событие.
Спасибо, prexx