ios 安卓锁屏

参考文档  http://blog.csdn.net/tyxkzzf/article/details/38902325

http://www.cocoachina.com/bbs/read.php?tid=206199

http://www.cnblogs.com/king_dy/archive/2010/11/11/1888134.html

http://fengmm521.blog.163.com/blog/static/2509135820137315430118/


ios 版本

修改 proj.ios_mac   ->   ios   ->   AppController.mm   文件

在方法  -(BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions  中加入

[[UIApplication sharedApplication] setIdleTimerDisabled: YES];//禁止ios设备在游戏期间锁屏


android版本

找到 frameworks/runtime-src/proj.android/src/org/cocos2dx/lua/AppActivity.java

AppActivity.java 的父类是 Cocos2dxActivity.java 在cocos2d-x/cocos/platform/android/java/src/org/cocos2dx/lib 下

父类最好不要动,直接修改AppActivity.java


//cocos2d-x-3.1.1版本
package org.cocos2dx.lua;

import org.cocos2dx.lib.Cocos2dxActivity;
import org.cocos2dx.lib.Cocos2dxGLSurfaceView;
//导入电源管理类
import android.os.PowerManager;  
import android.os.PowerManager.WakeLock; 
import android.os.Bundle;
import android.content.Context;

public class AppActivity extends Cocos2dxActivity {
	//定义变量
	WakeLock mWakeLock; 
	
	public Cocos2dxGLSurfaceView onCreateView() {
        Cocos2dxGLSurfaceView glSurfaceView = new Cocos2dxGLSurfaceView(this);
        // TestCpp should create stencil buffer
        glSurfaceView.setEGLConfigChooser(5, 6, 5, 0, 16, 8);
        
        return glSurfaceView;
    }
	//----  begin  复制
	protected void onCreate(Bundle savedInstanceState){  
        super.onCreate(savedInstanceState);  
        //设置该界面的电源管理->打开禁止锁屏功能  
        PowerManager pm = (PowerManager)getSystemService(Context.POWER_SERVICE);   
        mWakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK,"XYTEST");   
        mWakeLock.acquire();  
    }  
      
    protected void onPause() {  
        super.onPause();  
        //程序暂停运行于后台时调用的方法,在这里加入下边的移除不锁屏功能代码。  
        if(mWakeLock != null) {  
           mWakeLock.release();  
           mWakeLock = null;  
        }  
    }  
      
    protected void onResume() {  
        super.onResume();  
        //程序由后台转入前台的时候调用的方法onResume()中加入下边的关闭锁屏代码  
        if(mWakeLock == null) {  
           PowerManager pm = (PowerManager)getSystemService(Context.POWER_SERVICE);  
           mWakeLock = pm.newWakeLock(PowerManager.SCREEN_BRIGHT_WAKE_LOCK, "XYTEST");  
           mWakeLock.acquire();  
        }  
    }  
      
    public void onDestroy() {  
        //取消设置  
        super.onDestroy();  
        if(mWakeLock == null) {  
            mWakeLock.release();  
        }  
    }
//---- end
}

另一个修改的地方是 frameworks/runtime-src/proj.android/AndroidManifest.xml

<!-- 设置取消锁屏需要用到 -->
	<uses-permission android:name="android.permission.WAKE_LOCK"/>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值