返回Android游戏黑屏解决办法
这几天逛cocos2d-x.org论坛,发现cocos2d-x的作者放出来一个帖子,用来解决返回Android游戏加载资源时黑屏的问题。帖子过些日子估计就沉了,所以转出来,以供后面查询。
需要修改三个文件:
1) cocos2dx/platform/CCPlatformMacros.h
 
将Line84修改为 #define CC_ENABLE_CACHE_TEXTURE_DATA       0

2)cocos2dx/platform/android/java/src/org/cocos2dx/lib/Cocos2dxGLSurfaceView.java
注释掉Line167。

3)android工程目录下jin/hellocpp/main.cpp
注释掉Line32~43。

基本原理就是在activity进入后台后,不清除texture缓存,这样在activity回到前台后,不需要重新load资源。
我在自己的游戏上试了一把,修改之前切回游戏需要4秒左右时间,修改后不用1秒,可谓瞬间完成。
不过这个解决方案有些小问题,当有其他surfaceView的activity,比如集成了Admob广告后,切回来时只能看到广告,而不显示游戏画面。有个老外Pablo Tonello回复帖子说没有集成Admob也遇到了这种情况。目前还不知道是啥问题,有待慢慢研究。
这里是在github上的https://github.com/cocos2d/cocos2d-x/pull/1758/files

转载于:https://www.cnblogs.com/chiefCTO/p/3157213.html

cocos2dx andoroid切换后台后资源重载相关推荐

  1. IOS 后台挂起程序 当程序到后台后,继续完成定位任务

    // 当应用程序掉到后台时,执行该方法 - (void)applicationDidEnterBackground:(UIApplication *)application { } 当一个 iOS 应 ...

  2. IOS 后台挂起程序 当程序到后台后,继续完成Long Running Task 任务

    IOS 后台挂起程序 当程序到后台后,继续完成Long-Running Task 任务 www.douban.com/note/375127- http://lqzit.iteye.com/blog/ ...

  3. Android 实现微信,QQ的程序前后台切换:back键切换后台;点击通知栏恢复前台。

    实现类似微信,QQ的前后台切换:back键切换后台:点击通知栏恢复前台. 1.back键切换后台的实现: 这个实现需要在主activity重写onbackpressed()方法.代码如下: @Over ...

  4. vue定时器切换页面后停止

    在写个小项目,其中前端页面切换后,之前页面的定时器依然不停的往后台发请求.担心数据库的连接隐患,于是切换页面后,让定时器停止. mounted() {this.timeBatch = setInter ...

  5. Flutter切换tab后保留tab状态

    Flutter切换tab后保留tab状态 概述 Flutter中为了节约内存不会保存widget的状态,widget都是临时变量.当我们使用TabBar,TabBarView是我们就会发现,切换tab ...

  6. Android解决程序切换后台被干掉,恢复状态问题

    Android解决程序切换后台被干掉,恢复状态问题 参考文章: (1)Android解决程序切换后台被干掉,恢复状态问题 (2)https://www.cnblogs.com/caiwan/p/And ...

  7. 拯救者Y7000P 2020H款安装deepin20.5后资源空闲时经常出现风扇狂转现象

    拯救者Y7000P 2020H款安装deepin20.5后资源空闲时经常出现风扇狂转现象 记录下来备忘,不要再踩坑了!

  8. UIBackgroundTaskIdentifier 进入后台后结束任务再挂起APP

    App进入后台,(绝大部分情况下)会暂停执行代码,进入挂起状态. 有时候,某个任务进入后台后,我们希望它完成任务后再挂起.可以用UIBackgroundTaskIdentifier标记该任务,任务结束 ...

  9. Vue 切换路由后页面回到页面顶部

    Vue 切换路由后页面回到页面顶部 backTop() {window.scrollTo(0, 0)document.body.scrollTop = 0document.documentElemen ...

最新文章

  1. Netty、Kafka中的零拷贝技术到底有多牛?
  2. SpringBoot+Mybatis+ Druid+PageHelper 实现多数据源并分页
  3. this、new、模式工厂、创建新的构造函数
  4. 十天学Linux内核之第九天---向内核添加代码
  5. 最新SSM完整模板(Spring+SpringMVC+MybatisPlus)
  6. 字符串处理 —— 回文串相关 —— 回文串的判断
  7. html选择第一个clss,css3如何选择第一个子元素?
  8. 98道常见Hadoop面试题及答案解析
  9. h5完整抽奖系统带php后台(含数据库脚本)
  10. Adobe Acrobat Pro DC拆分PDF
  11. MSP430F415IRTDR
  12. 携程2021年校招笔试题[2021年10月21日19点-21点]
  13. wildcard函数
  14. CodeForces 596B Wilbur and Array 贪心
  15. cefsharp内嵌资源html的读取,C#(csharp)用CefSharp开发实现一个浏览器,抓取网站任意资源...
  16. 【华为认证-每日十题】HCNP-RS-IENP(31-40)【问】
  17. IOS 生成本地验证码
  18. 分享几个免费学习IT的网站
  19. 律师事务所管理系统 v2.0
  20. Anaconda误删 ImportError: No module named conda.cli

热门文章

  1. C++中逗号操作符重载的分析
  2. 验证码画布生成以及点击图片切换验证码
  3. 前端相对路径 与后端相对路径的区分
  4. BZOJ3945 : 无聊的邮递员
  5. 标准C程序设计七---12
  6. texlive2015+texstudio
  7. 550 Ip frequency limited
  8. 在网页中JS函数自动执行常用三种方法
  9. js高级编程中命名空间的两种用法
  10. KDE Web开辟工具──KDE-Webdev