2014-04-24 26 views
-2

我正在处理一个应用程序,该应用程序将开始接收ACTION_SCREEN_ON广播消息的活动。
如何实现这个?任何人都可以发布代码吗?
我知道我必须使用BroadcastReceiver。但我需要一个详细的解释,因为我是初学者。如何在接收ACTION_SCREEN_ON消息时启动一项活动?

+0

为了获得适当的支持,最好进一步详细介绍一下目前为止您尝试过的内容以及您对该主题进行了哪些研究(包括您可能已经测试的代码)。你不应该只是要求代码。这不是Stackoverflow的工作方式。 –

+0

我一定会在下次做。 –

回答

0

在应用程序的AndroidManifest.xml有意向过滤器创建一个接收器捕捉android.intent.action.SCREEN_ON:

<receiver 
    android:name="your.app.packagename.Receiver" > 
    <intent-filter> 
     <action android:name="android.intent.action.SCREEN_ON" /> 
    </intent-filter> 
</receiver> 

然后,创建接收机类:

package your.app.packagename; 
// imports here 
public class Receiver extends BroadcastReceiver { 
    @Override 
    public void onReceive(Context context, Intent intent) { 
     String action = intent.getAction(); 
     if (action != null && Intent.ACTION_SCREEN_ON.equals(action)) { 
      // Do whatever you need to be done when screen turns on 
     } 
    } 
} 

实现即:

  • 您需要启动您的应用程序至少一次,然后才开始接收ACTION_SCREEN_ON广播。

  • onReceive()方法预计将运行得很快。如果您要做繁重的工作,请为其启动一个AsyncTask或后台线程。

相关问题