当前位置:   article > 正文

Android程序:系统重启+开机自动运行+屏幕解锁_android重启并解锁桌面打开应用

android重启并解锁桌面打开应用

Android程序:系统重启+开机自动运行+屏幕解锁

android程序自动重启,释放内存。

1、系统自动重启方法

private void shutdownDevice(Context context){    
      String cmd = "su -c reboot";
      try {
             Runtime.getRuntime().exec(cmd);
          } catch (IOException e) {
                 // TODO Auto-generated catch block
             new AlertDialog.Builder(context).setTitle("Error").setMessage(
                             e.getMessage()).setPositiveButton("OK", null).show();
         }
   } 
 

2、系统重启后程序自动运行

先在AndroidManifest文件中添加权限和注册广播

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

  1. <receiver android:name=".BootBroadcastReceiver"
  2.     <intent-filter> 
  3.      <action android:name="android.intent.action.BOOT_COMPLETED" /> 
  4.     </intent-filter> 
  5. </receiver>

添加BootBroadcastReceiver.class

  1. static final String ACTION = "android.intent.action.BOOT_COMPLETED";   
  2.  
  3.  @Override   
  4.  public void onReceive(Context context, Intent intent) {   
  5.    if (intent.getAction().equals(ACTION)){   
  6.     Intent sayHelloIntent=new Intent(context,activity.class);   
  7.   
  8.     sayHelloIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);   
  9.   
  10.     context.startActivity(sayHelloIntent);   
  11.    }   
  12.  }
 

3、程序启动时屏幕解锁

先在AndroidManifest文件中添加权限

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

onCreate中加入,最好在setContentView(R.layout.main)之前 

  1. getWindow().setFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD,
  2.           WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
  3.         getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON,
  4.           WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
  5.         setContentView(R.layout.main);
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/126282
推荐阅读
相关标签
  

闽ICP备14008679号