Android屏幕的休眠和唤醒

目的:实现屏幕的休眠和唤醒。

实现:点击按钮,屏幕进入休眠,4秒后屏幕自动唤醒。

注意:需要系统签名(本文是在没有源码的情况下,使用platform.pk8、platform.x509.pem、signapk.jar来进行系统签名)

开发工具用的是eclipse,android studio还没试过。

步骤:

1、在eclipse新建项目,在MainActivity中实现代码如下:

public class MainActivity extends Activity implements OnClickListener{
Button btnObj;
Handler mTimeHandler=new Handler();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btnObj=(Button)findViewById(R.id.button1);
btnObj.setOnClickListener(this);
}
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
final PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE);
pm.goToSleep(SystemClock.uptimeMillis());
Log.d("sleep","屏幕状态
1="+pm.isScreenOn());
mTimeHandler.postDelayed(new Runnable(){
   public void run(){
    Log.d("sleep", "sleep--");
    PowerManager.WakeLock wakeLock = pm.newWakeLock(PowerManager.ACQUIRE_CAUSES_WAKEUP | PowerManager.SCREEN_DIM_WAKE_LOCK, "TAG");
wakeLock.acquire();
Log.d("sleep","屏幕状态2="+pm.isScreenOn());
wakeLock.release();
   }

}, 4*1000);}}


2、在AndroidManifest.xml中添加系统签名

    android:sharedUserId="android.uid.system" >


3、在AndroidManifest.xml中添加权限

 
   
 

注意:如果出现加权限报错,例如:



可以打开eclipse中的Window --> Show View --> Problems,然后右击Error再删除,就可以运行项目了。

Android屏幕的休眠和唤醒_第1张图片


4、①把编译好的APK和三个系统签名工具(platform.pk8、platform.x509.pem、signapk.jar)放到同一个目录下。

      ②打开cmd,进入①中所说的目录下,输入命令:java -jar signapk.jar platform.x509.pem platform.pk8  aaa.apk(签名前)  bbb.apk(签名后),按回车。

      ③得到系统签名的APK:bbb.apk。

      ④运行bbb.apk即可。


你可能感兴趣的:(Android屏幕的休眠和唤醒)