在我们的cocos2d-x项目中的”项目名.java“文件中修改原来自带的那一个onCreate()
PowerManager pm = (PowerManager)getSystemService(Context.POWER_SERVICE); mWakeLock=pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "XYTEST");
mWakeLock.acquire();
mWakeLock在外面定义即可:WakeLock mWakeLock
打开AndroidManifest.xml,加入权限
<uses-permission android:name="android.permission.WAKE_LOCK" />
这样,在应用程序运行的时候,手机就不会自动锁屏了。但是会出现另一个问题,就是当你按了Home键之后,程序退到了后台时,手机也不锁屏了。所以,我们可以重写一下onPause()方法,这个方法是程序暂停运行于后台时调用的方法,在这里加入下边的移除不锁屏功能代码。
if(mWakeLock!=null){ mWakeLock.release(); mWakeLock=null;}
然后再在程序由后台转入前台的时候调用的方法onResume()中加入下边的关闭锁屏代码,如果项目名.java中没有这个方法,我们重写一下这个方法就行了。
if(mWakeLock==null)
{
PowerManager pm=(PowerManager)getSystemService(Context.POWER_SERVICE);
mWakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK,"XYTEST");
mWakeLock.acquire();
}