android – 用于Screen OnOff的BroadcastReceiver无法正常工作

android – 用于Screen OnOff的BroadcastReceiver无法正常工作,第1张

概述我试图使用BroadcastReceiver,但它不工作,请帮我解决这个问题. MyReceiver. java package com.example.broadcast_receiver;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Inten 我试图使用broadcastReceiver,但它不工作,请帮我解决这个问题.
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无法正常工作所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1138085.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存