cocos2dx android 实现应用重启

原创 2015年11月20日 20:05:13

由于本身对java一点也不了解,所以我不知道这种做法是否会造成什么问题,但至少实现了重启的功能。


在AppActivity.java中加入如下代码:

//自动启动
public static void restartApp()
{
	AppActivity.sContext.restart();
}
public void restart()
{
	finish();
	Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName());  
	i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  
	startActivity(i);
	android.os.Process.killProcess(android.os.Process.myPid());
}

另外sContext需要自己手动添加,仿照Cocos2dxActivity添加即可。


现在需要在cpp中调用restartAPP函数:

JniMethodInfo method;

bool b = cocos2d::JniHelper::getStaticMethodInfo(method, "org.cocos2dx.cpp.AppActivity", "restartAPP", "()V");
if(b)
{
	method.env->CallStaticVoidMethod(method.classID, method.methodID);
	method.env->DeleteLocalRef(method.classID);
}
需要包括头文件:

#include "platform/android/jni/JniHelper.h"



版权声明:本文为博主原创文章,未经博主允许不得转载。

android Service重启问题,结合AlarmManager实现定时任务

当启动service进行后台任务的时候,我们一般的 做法是启动一个线程,然后通过sleep方法来控制进行定时的任务,如轮询操作,消息推送。这种service的资源是很容易被回收的,虽然service的...

【Cocos2dx】利用导演类、场景类完成重新开始游戏、暂停游戏、关闭游戏功能

重新开始游戏、暂停游戏、关闭游戏是绝对是游戏的基础,虽然代码不多,不过这要利用到Cocos2dx导演类、场景类完成,事先如果不对其进行了解,绝对是很难做出来。 下面用一个小例子说明如何利用导演类、场...

Cocos2d-x开发系列 交叉开发模式二 初始化和重启

LuaSupportFactory 开启和重启虚拟机在原有Cocos2d-x C++项目上添加了Lua支持了,那么我们怎么使用这些接口呢?我们可以实现一个单例来处理Lua相关的底层接口。封装一个 Lu...
  • diyal
  • diyal
  • 2016年06月23日 11:56
  • 1233

cocos2dx lua 热更新

cocos2dx lua 热更新 最近研究cocos2dx +
  • cloud95
  • cloud95
  • 2014年07月23日 15:58
  • 18031

cocos2d-x 游戏嵌入到ios/android应用内部 - android篇

最近做了一个项目,需要将游戏内置在ios/android的内部,就类似于游戏大厅的模式,所以其实整个应用是一个app,只是其中某个功能点进去,就进入了我们熟悉的界面。 因为cocos2d-x本身就是基...
  • yjsowsk
  • yjsowsk
  • 2016年07月15日 17:57
  • 2311

Cocos2d-x 3.X里的坑(2)——安卓android APP应用名称的修改

本人用的是Android Studio。如果对用Android Studio创建Cocos2d-x项目有疑问的请戳这里。 创建好Cocos2d-x项目之后,我们发现在在Android Studio里...

android 重启应用(cocos2d-x重启游戏)

private void restartApplication() { final Intent intent = getPackageManager().getLaunchInt...
  • wcjwdq
  • wcjwdq
  • 2015年03月19日 12:06
  • 2055

cocos2dx 游戏切到后台再进入游戏的处理

由于Cocos引擎中,游戏切入后台后定时器后停掉会让某个Animation动作停止。  导致当重新进入游戏时,看到的不是你想要的画面。或者定时器倒计时的时间对不上等问题。  cc.game.EVE...
  • W_han__
  • W_han__
  • 2017年07月01日 12:30
  • 737

cocos2dx Android 多级日志系统应用

在 cocos2d-x 中实现类 Android 多级日志系统!写程序,免不了调试打印 Log ,而一个方便的日志系统,可以提高不少开发的效率,写过 Android 应用的朋友应该了解在 Androi...

cocos2dx:C++层通过JniHelper调用JAVA层代码进而调用Android手机应用接口

首先记录android打包主线流程(Windows平台,cocos2dx-3.6),接下来记录android真机调试流程,这里就到最关键的地方啦,因为我写的是一个能简单打电话的程序,如何调用Andro...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:cocos2dx android 实现应用重启
举报原因:
原因补充:

(最多只允许输入30个字)