我正在尝试更新并将ringer的更改模式记录到textview中。谢谢你的帮助!
这是我的接收器清单:(我找不到任何权限)
<receiver android:name="RingTypeMainActivity$RingTypeBroadcastReceiver" >
<intent-filter>
<action android:name="android.media.RINGER_MODE_CHANGED" >
</action>
</intent-filter>
</receiver>
我在我的Activity中使用Broadcastreceiver:当我运行应用程序时,没有任何内容被附加到textview
(txtResults)。
public static class RingTypeBroadcastReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
int num = intent.getIntExtra(AudioManager.EXTRA_RINGER_MODE, -1);
switch (num) {
case 0:
txtResults.append("Mode " + String.valueOf(num) + " - Normal audio mode: not ringing and no call established.");
break;
case 1:
txtResults.append("Mode " + String.valueOf(num) + " - Ringing audio mode. An incoming is being signaled.");
break;
case 2:
txtResults.append("Mode " + String.valueOf(num) + " - In call audio mode. A telephony call is established.");
break;
case 3:
txtResults.append("Mode " + String.valueOf(num) + " - In communication audio mode. An audio/video chat or VoIP call is established.");
break;
default:
break;
}
答案 0 :(得分:1)
您的联系人姓名未在清单文件中正确声明。
更改此行代码
<receiver android:name="RingTypeMainActivity$RingTypeBroadcastReceiver" >
到这个
<receiver android:name=".RingTypeMainActivity$RingTypeBroadcastReceiver" >
在接收者名称之前添加一个点(。)是您的包名称的缩写。