2012-05-28 10:07来源:武汉北大青鸟光谷校区作者:027hpit
武汉北大青鸟安卓培训技术:如果需要在Android开机时自动启动应用程序,可以通过响应广播消息来实现, Android系统启动结束时,会发出 android.intent.action.BOOT_COMPLETED 消息。 具体步骤如下:
1. 定义一个Broadcast Receiver ,比如:BootupReceiver
[java]
public class BootupReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
//better delay some time.
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Intent i = new Intent(context, BootupDemoActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
public class BootupReceiver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
//better delay some time.
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Intent i = new Intent(context, BootupDemoActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(i);
}
}
用于响应android.intent.action.BOOT_COMPLETED。
2. 在Manifest文件中定义该Broadcast Receiver
android:permission=”android.permission.RECEIVE_BOOT_COMPLETED”>
3. 加上所需权限
这些,但手机重启示会自动运行你的应用。 不过此时你的应用可能会被屏幕锁定挡住。解除屏幕锁定后可以看到你运行的应用。
如果想用户一开机就看到你的应用,可以使用代码就屏幕锁去除,方法如下:
在Activity的onCreate事件处理中添加下面代码
[java]
KeyguardManager keyguardManager
= (KeyguardManager)getSystemService(KEYGUARD_SERVICE);
KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);
lock.disableKeyguard();
KeyguardManager keyguardManager
= (KeyguardManager)getSystemService(KEYGUARD_SERVICE);
KeyguardLock lock = keyguardManager.newKeyguardLock(KEYGUARD_SERVICE);
lock.disableKeyguard();
武汉北大青鸟武汉宏鹏光谷校区将继续为学子们介绍安卓培训课程相关技术,敬请关注。
Copyright (c) 2006-2021 武汉宏鹏教育咨询有限公司 版权所有 All Rights Reserved.