OPhone平台架构和主要开发组件
2010-05-24 21:11:00 来源:WEB开发网BroadcastReceiver
应用程序的运行环境不是一成不变的,SD卡插拔、电池电量低等事件会影响应用程序的运行。为了能够做出正确的响应,应用程序必须能够监听此类事件并做出正确的处理。在OPhone系统中,BroadcastReceiver就是我们需要的那个组件。BroadcastReceiver没有界面显示,但是它却可以通过AndroidManifest.xml或者在代码中进行注册,以监听应用程序感兴趣的事件。BroadcastReceiver是一个抽象类,定义了一个抽象方法onReceive(),当广播事件到来时,BroadcastReceiver的onReceive()方法会被调用,开发者只需要自己实现此方法即可。
void onReceive(Context curContext, Intent broadcastMsg)
使用BroadcastReceiver可以方便的实现开机自启动应用程序,OPhone系统启动后,会广播 Intent.ACTION_BOOT_COMPLETED事件,因此只需要在程序中定义一个BroadcastReceiver并在 AndroidManifest.xml中进行注册。
Java代码:<receiver android:name=".BootReceiver" > <intent-filter> <action android:name="android.intent.action.BOOT_COMPLETED" /> </intent-filter> </receiver>
除此之外,还需要在AndroidManifest.xml中增加权限声明,如果不声明应用程序所需要的权限,那么在运行时会抛出安全异常。
Java代码:<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
最后只需要实现一个BroadcastReceiver即可,代码如下所示:
Java代码:<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>
public class BootReceiver extends BroadcastReceiver { @Override public void
更多精彩
赞助商链接