coolszy

业余时间专注于移动开发。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

有些时候我们需要我们的程序在系统开机后能自动运行,这个时候我们可以使用Android中的广播机制,编写一个继承BroadcastReceiver的类,接受系统启动关闭广播。代码如下:

/**
*
@author coolszy
*@date 2011-6-14
*@blog
http://blog.csdn.net/coolszy
*/

public class BootCompletedReceiver extends BroadcastReceiver
{

@Override
public void onReceive(Context context, Intent intent)
{
Log.i(
"MainActivity", "系统启动完毕");
}
}

然后在AndroidManifest.xml文件中进行注册:

<receiver android:name=".BootCompletedReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>

同时应添加所需要的权限:

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

既然Android系统在启动完毕后会发送广播,在系统关闭时是否也有对应的广播呢?通过查询帮助文档,找到了系统关闭的广播:

/**
*
@author coolszy
*@date 2011-6-14
*@blog
http://blog.csdn.net/coolszy
*/

public class ShutdownReceiver extends BroadcastReceiver
{

@Override
public void onReceive(Context context, Intent intent)
{
Log.i(
"MainActivity", "启动关闭中...");
}
}

在AndroidManifest.xml文件中进行注册:

<receiver android:name=".ShutdownReceiver"> 
            
<intent-filter> 
               
<action android:name="android.intent.action.ACTION_SHUTDOWN"/> 
           
</intent-filter> 
        
</receiver>

是否还需要相应的权限呢?通过查询帮助文档,并没有找到相关的权限,在模拟器中进行测试,当系统关闭后能正常输出信息。

posted on 2011-06-14 19:39  coolszy  阅读(2555)  评论(0编辑  收藏  举报