【发布时间】:2011-07-14 19:15:05
【问题描述】:
我正在尝试让我的应用在屏幕打开时打印一些内容以进行记录,但它没有按我的预期工作。
这是我的清单文件中的内容
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity ...>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name="PhoneBroadcastReceiver" android:enabled="true">
<intent-filter>
<action android:name="android.intent.action.SCREEN_ON"></action>
</intent-filter>
</receiver>
</application>
我的接收器看起来像
public class PhoneBroadcastReceiver extends BroadcastReceiver {
public PhoneBroadcastReceiver()
{
}
@Override
public void onReceive(Context _context, Intent _intent) {
// TODO Auto-generated method stub
String a = _intent.getAction();
MessageHandler.log("Received action: " + a); // just a wrapper for printing to a log
}
}
但它不会在日志中打印任何内容。我一直按我的 Android 电源按钮,屏幕打开/关闭,但我的消息没有出现在日志中。我错过了什么?它看起来和我在网上找到的例子一样。
【问题讨论】:
-
您是否尝试过先将某些内容记录到 DDMS 的控制台以查看它是否真的进入了您的广播接收器? (使用
Log.info("PhoneBroadcastReceiver ","Entering broadcast receiver")。如果您可以在控制台看到此日志,那么问题出在您的 MessageHandler 类中
标签: java android broadcastreceiver