
MyReceiver. java
package com.example.broadcast_receiver;import androID.content.broadcastReceiver;import androID.content.Context;import androID.content.Intent;import androID.util.Log;public class MyReceiver extends broadcastReceiver { @OverrIDe public voID onReceive(Context context,Intent intent) { // Todo auto-generated method stub Log.i("[broadcastReceiver]","MyReceiver"); if(intent.getAction().equals(Intent.ACTION_SCREEN_ON)){ Log.i("[broadcastReceiver]","Screen ON"); } else if(intent.getAction().equals(Intent.ACTION_SCREEN_OFF)){ Log.i("[broadcastReceiver]","Screen OFF"); } }} AndroIDManifest.xml中
<?xml version="1.0" enCoding="utf-8"?><manifest xmlns:androID="http://schemas.androID.com/apk/res/androID" package="com.example.broadcast_receiver" androID:versionCode="1" androID:versionname="1.0" > <uses-sdk androID:minSdkVersion="9" androID:targetSdkVersion="16" /> <application androID:allowBackup="true" androID:icon="@drawable/ic_launcher" androID:label="@string/app_name" androID:theme="@style/Apptheme" > <receiver androID:name=".MyReceiver" androID:enabled="true" androID:exported="false"> <intent-filter> <action androID:name="androID.intent.action.SCREEN_ON"/> <action androID:name="androID.intent.action.SCREEN_OFF"/> </intent-filter> </receiver> <activity androID:name="com.example.broadcast_receiver.MainActivity" androID:label="@string/app_name" > <intent-filter> <action androID:name="androID.intent.action.MAIN" /> <category androID:name="androID.intent.category.LAUNCHER" /> </intent-filter> </activity> </application></manifest>
broadcastReceiver无法正常工作且没有制作任何日志,请帮我解决这个问题.
解决方法 嘿尝试使用动态调用广播,我尝试了它将乖乖工作…public class MainActivity extends Activity { //Create broadcast object broadcastReceiver mybroadcast = new broadcastReceiver() { //When Event is published,onReceive method is called @OverrIDe public voID onReceive(Context context,Intent intent) { // Todo auto-generated method stub Log.i("[broadcastReceiver]","MyReceiver"); if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) { Log.i("[broadcastReceiver]","Screen ON"); } else if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) { Log.i("[broadcastReceiver]","Screen OFF"); } } }; @OverrIDe public voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_main); registerReceiver(mybroadcast,new IntentFilter(Intent.ACTION_SCREEN_ON)); registerReceiver(mybroadcast,new IntentFilter(Intent.ACTION_SCREEN_OFF)); }} 总结 以上是内存溢出为你收集整理的android – 用于Screen On / Off的BroadcastReceiver无法正常工作全部内容,希望文章能够帮你解决android – 用于Screen On / Off的BroadcastReceiver无法正常工作所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)