一个 android 开机自动启动功能的测试

测试代码仅仅关于开机自动启动,无其他功能。

要实现此功能简单说包括三部分:AndroidManifest.xml,rec1.java,及设置开机自动启动权限。测试环境:android 4.4.2,java 1.6.0_45。


1. 具体代码

1.1 AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.lbs">
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

    <application>
        <activity android:name="com.app1.act1">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <receiver android:name="com.app1.rec1" >
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>
        </receiver>
    </application>
</manifest>

 


1.2 rec1.java

public class rec1 extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        Toast.makeText(context, "receiver...", Toast.LENGTH_LONG).show();
    }
}

 


2.一些说明
--adb install app1.apk 后应手动打开自动启动权限
--使用前需要手动启动该app程序
--可以点击退出按钮结束程序(java.lang.System.exit(0))
--这时程序会出现在 recent 中,不能从中划掉
--重新启动手机后不出现在 recent 中但receiver有效
--手动启动程序并从recent中划掉则receiver失效,重启后仍失效
--adb uninstall com.app1 后失效
--重启后 recent 里不出现,且无法查看目前状态(receiver是否在工作)
--注意不应关闭该程序在设置里的开机自动启动权限
--poweron 与 reboot 同效

[END]

 

上一篇:alertmanage 告警路由


下一篇:设计模式-命令模式