我读过一些帖子说使用这种方法"不好",不应该使用,这不是"关闭"应用程序的正确方法,而不是android的工作方式......
我理解并接受这样一个事实,即在正确的时间终止这个过程时Android OS比我更清楚,但我没有听到一个很好的解释为什么使用这个killProcess()方法是错误的?毕竟 - 它是android API的一部分......
我所知道的是,调用此方法时,其他线程正在执行潜在的重要工作(对文件的操作,写入数据库,HTTP请求,运行服务......)可以在中间终止,而且显然不是很好.此外,我知道我可以从"重新打开"应用程序将更快的事实中受益,因为系统可能仍然从上次使用时"保持"在内存状态,并killProcess()防止这种情况.
除了这个原因,假设我没有这样的操作,而且我不在乎我的应用程序会从头开始每次运行,还有其他原因为什么不使用这个killProcess()方法?
我知道关闭一个Activity的finish()方法,所以请不要写我这个...
finish()仅供参考Activity.不是所有应用程序,我想我确切知道为什么以及何时使用它...
还有一件事 - 我正在使用Unity3D框架开发游戏,并将项目导出到android.当我反编译生成的apk时,我非常惊讶地发现java源代码是从Unity创建的 - 实现Unity的finish()方法,用Activity.
Application.quit()假设是根据Unity3d指南关闭游戏的正确方法(它真的吗?也许我错了,并且错过了一些东西),那么Unity的框架开发人员如何做得非常好,因为它似乎实现了这个原生android到Process.killProcess(Process.myPid())?