就是当用户选择开启自启动时每次开机就会启动该应用,用户选择关闭开机自启动时就不会每次开机启动该应用!
开始我想用SharePerference来保存用户的选择状态时,在AutoEnable 类中不能调出SharePerference的对象,
想用数据库保存状态但是AutoEnable不是context,不能创建数据库实例……
晕乎中……

解决方案 »

  1.   

    你Activity都能启动,还没有Context ?
      

  2.   

    在context.startActivity(in);之前查循一下用户的设置,如果用户设置了,就不startActivity()了。
      

  3.   

    能否在Settings activity启动后判断,比如onCreate中判断到不允许启动,就调用finish(),用户不会看到~
      

  4.   

    个人认为:广播类是先运行的,开机的时候server首先调用BroadcastReceiver ,如果intent.getAction().equals(“android.intent.action.BOOT_COMPLETED”)时就是开机自启动的状态,然后再去创建Settings的应用!
    AutoEnable 这个类是继承BroadcastReceiver ,而BroadcastReceiver 不是Context子类 所以AutoEnable 也不是。
    我的需求是开机自启动,首先接受到广播类然后采取创建Activity,也就是现在是 Settings的应用还没有创建如何去取得用户所保存的状态是 开机自启动还是不自启动呢
    通过本应用所创建的数据库和从sharePreference中是无法拿到所需要的东西
      

  5.   

    如何去取得该用户所保存的设置:本应用数据库和sharePreference用不了广播类来判断是否开机自启动,所以activity根据广播类的判断来启动
      

  6.   

    Settings.System.putInt()
    调用上述方法进行设置和获取当前值
      

  7.   

    Settings.System.getInt()
    获得当前值