2012年8月24日星期五

[分享] iOS 为什么不开发一键关闭所有应用的功能?

iOS 为什么不开发一键关闭所有应用的功能?

其实下面的那个 HOME 键就是一键关闭的功能。。。好吧,你也许说那不是。

如果要探究为什么大多数国人喜欢把程序完全关闭掉,这其实会揭露一个令人不太安心的事实:就是我们生活在一个流氓软件,不安全软件横行的世界里。

在这样一个世界里,虽然我们有时不得不用这些流氓软件,用这些自己也不信任的软件,但是下意识里还是觉得,当自己没有看见他们的时候,只有把他们完全关掉,心里才会觉得安全。——必须承认:这是一种完全可以理解的心态!而且这个问题与节省内存并没有任何关系。只因为你认为:"当我关闭了这个软件的时候,它就无法再作恶了"

很不幸的是,这个来自 Windows 的经验,并不能用于 iOS 和 android 之类的手机系统。(手机系统中,被关闭的恶意软件仍然可以作恶)

手机系统大多数被设计为程序无法在后台保持运行。也就是说,如果他没有界面了,那么它就没有工作了。为了测试这一点,你可以尝试用手机浏览器打开一个比较大图片比较多的网页,在这个网页没有完全载入的时候就直接按 HOME 键,跟踪手机流量可以表明,此时浏览器的下载行为停止了,不再继续下载页面。这跟 Windows/OSX/Linux 的情况不同,在桌面系统中,如果你打开一个浏览器下载一个页面没完成之前立即最小化浏览器然后切回桌面,这个浏览器在后台会继续下载,也就是说,它继续占用CPU,继续跑流量。因此,为了避免这些程序继续占用CPU和网络,关掉他们常常是必要的。

在手机系统中,你只要HOME了之后,程序正常情况下就无法再获取到CPU和网络,因此手机系统提供了其他的机制让这些程序在需要的时候响应。

1。当系统发生某些事件的时候,如果你的程序注册了某个事件,则会启动你的程序响应某个事件(例如,开屏锁屏,网络接入点改变,各种传感器的动作,等等,都可以是事件) 。——无论你是否关闭了这个程序,这些事件都能获得响应,相反如果你关闭了,程序响应事件时需要重新载入,消耗更多的CPU与电量。

2。当系统产生推送通知的时候,可以通过推送通知给用户推送消息,并且其实响应的,也可能可以触发某个程序的启动。

这,简单的来说,就是:在手机系统中,即使你完全关闭了一个应用程序,也无法阻止他的流氓行为,因为在他想干活的时候,他永远会被系统启动,然后做他想做的事情。——在手机上,关闭一个应用程序变得几乎没有价值,除了释放内存以外。

但是为了释放手机内存而关闭应用程序是否就有好处呢?我对此看法仍然持否定态度,因为如前面所说的,即便关闭了,那些程序随时可能响应某个触发器而启动,因此你将陷入无限的杀程序,程序启动,杀程序,程序启动的循环中,这样的循环将极大的消耗手机电量。

如果你的手机RAM配备得不足,杀程序并不能使你的手机更流畅,完全删除掉那些程序才成。

如果你不信任一个程序,关掉它并不能使你的手机更安全,完全删除掉它才成。

所以回到最初楼主的问题上来,iOS 为什么不开发一键关闭功能呢?因为:

1。iOS 认为 iOS 系统中并没有那么多流氓软件。

2。iOS 认为一般而言你没有必要安装那些流氓软件。

3。所以 HOME 键就足够了。

-- 完 --

下载知乎 iPhone 客户端:http://zhi.hu/ios


源地址:
http://www.zhihu.com/question/19918745/answer/13349273
(来自鲜果联播)


发自我的 iPad

没有评论:

发表评论