android 应用重启 关闭

转载 2016年05月31日 10:29:43
在主Activity中实现如下方法: 用于调用重启

List list = new ArrayList();
/////////////////////////////////////////////////////////////member end 600 442 - 39
//自动启动
public static void restartApp()
{
System.out.println(" ------------------------------------------ restartApp ");
AppActivity.sContext.restart();
}
public void restart()
{
System.out.println("-----------------------" + getBaseContext().getPackageName());
for(Activity activity:list)
{
activity.finish();
}
list.clear();
Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName());  
i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  
startActivity(i);
}

在cpp中, 使用jni调用java中的public static void restartApp()函数
cocos2d::JniMethodInfo method;

bool b = cocos2d::JniHelper::getStaticMethodInfo(method, "org.cocos2dx.cpp.AppActivity", "restartApp", "()V");
if(b)
{
method.env->CallStaticVoidMethod(method.classID, method.methodID);
}

实现重启功能。




Application里加函数

private List<Activity> mList = new ArrayList<Activity>();  

public void addActivity(Activity activity) {   
       mList.add(activity);   
   } 
 

退出
//关闭每一个list内的activity  
   public void exit() {   
       try {   
           for (Activity activity:mList) {   
               if (activity != null)   
                   activity.finish();   
           }
           mList.clear();
       } catch (Exception e) {   
           e.printStackTrace();   
       } finally {   
           System.exit(0);   
       }   
   }   
   

重启
   public void restart()
   {
   System.out.println("-----------------------" + getBaseContext().getPackageName());
   for (Activity activity:mList) {   
            if (activity != null)   
                activity.finish();   
        }   
   mList.clear();
   Intent i = getBaseContext().getPackageManager().getLaunchIntentForPackage(getBaseContext().getPackageName());  
   i.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  
   startActivity(i);
   }



应用

m_app.restart();//重启


//关闭

m_app.exit();
System.exit(0);

IOS中UITableView使用总结

原文链接: https://my.oschina.net/u/2340880/blog/404605 一、初始化方法 - (instancetype)initWithFram...

iOS 使用UIBezierPath与CABasicAnimation绘制图形

由于项目需要,最近接触了一些绘图的知识,现在记录下来学习过程。 首先看一下效果图:  UIBezierPath对象是CGPathRef数据类型的封装。path如果是基于矢量形状的,都用直线和曲...

Android 应用实现系统重启reboot

在AndroidManifest.xml加入权限

android 应用 捕获异常 重启应用

开发Android的时候难免会遇到程序异常,为了更好的知道程序的问题然后做出对应的记录或者改进处理是必不可少的。 一下是我处理的一个程序oom的收希望他可以自动重启,释放资源。当然这个只是解决燃眉之...

android应用程序遇到程序关闭后重启的问题

程序退出的情况: 1、程序异常退出,需要程序重启 2、程序退出,在没有异常报出,或第三库问题引起   1、程序异常退出,需要程序重启   第一步:一个类继承UncaughtExceptionHandl...
  • ygswine
  • ygswine
  • 2014年02月15日 12:03
  • 1178

Android 应用程序(APK) 如何获得系统签名权限 强制关闭程序(后台进程)

秒杀一切市面上所需要获取Root权限的安全管理软件。当然缺点是必须针对相应的平台和系统签名,扩展维护比较麻烦。...

android不需要重启更改应用语言

  • 2017年04月06日 11:34
  • 3KB
  • 下载

Android--Android 应用程序快速启的秘诀

Android系统框架和上层应用是类java(不是正统的sun java)开发的,实现了自己的java虚拟机dalvik,既然用java虚拟机和java开发,一般都会认为效率低下。其实不然,在基本主流...
  • zlQQhs
  • zlQQhs
  • 2013年03月01日 00:14
  • 843

【Android】App应用崩溃(Crash/Force Close)之后如何让它自动重启?

英文原文: Auto Restart application after Crash/Force Close in Android. 手机上的Android应用,经常会出现“Force Cl...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:android 应用重启 关闭
举报原因:
原因补充:

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