Я хочу реализовать простой BroadcastReceiver, он запускается, когда есть входящий звонок. Тем не менее, кажется, что onReceive никогда не срабатывает (я очень тщательно проверил LogCat, не выводил туда), что было не так? Tks Мой класс:использовать широковещательный приемник для приема входящего вызова, onReceive не срабатывает?
public class MyPhoneReceiver extends BroadcastReceiver {
private static final String TAG = "DEBUG";
@Override
public void onReceive(Context context, Intent intent) {
Log.e(TAG, "Test loggiiiiiiiiiiiiiiiiiiiiiiiiing!");
}
}
Мой файл манифеста:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="tung.le.android.receiver.phone"
android:versionCode="1"
android:versionName="1.0" >
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<receiver android:name=".MyPhoneReceiver" >
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" >
</action>
</intent-filter>
</receiver>
</application>
<uses-sdk android:minSdkVersion="15" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" >
</uses-permission>
</manifest>
Сначала вы можете проверить свой приемник с помощью специального намерения (возможно, вашего имени пакета). Я думаю, что это сработает. Затем мы выясним, почему намерение PHONE_STATE не фиксируется. Какую версию Android вы тестируете? – dcow
привет Дэвиду, спасибо за ваше предложение, позвольте мне попробовать. Моя версия 4.0.3 –
Надеюсь, ваш «MyPhoneReceiver» принадлежит к тому же пакету, что и «tung.le.android.receiver.phone». Если нет, вам нужно будет указать полное имя в манифесте. – Avinazz