当前位置: 代码迷 >> Brew >> 怎么判断APP的状态
  详细解决方案

怎么判断APP的状态

热度:2619   发布时间:2013-02-26 00:00:00.0
如何判断APP的状态
对APP的状态很疑惑,看到介绍
Applications can be divided into three categories: active, suspended, and background
1.首先,开机初始化完成后,工程中所有的app应该都加载内存了,但仅仅是相关的code,不一定有对应的实例,
如ALARM,相关的二进制代码是在内存中的,但不一定有alarm对象,不知这样理解是否正确?

2.以ALARM为例,当在此app相关的界面时应该是active(也只有这种情况是active)的,
当在此app界面来短信时,低电量提示时是suspanded的,
什么时候是后台的,如何判断?一开机初始化时是background的?

谢谢~

------解决方案--------------------------------------------------------
Applications should be divided into three categories: inactive,active, suspended, and background.

另外,app 是动态加载的。
------解决方案--------------------------------------------------------
应用是有inactive状态的,活动状态指你说的那三种。
------解决方案--------------------------------------------------------
IAppletCtl接口里面提到了applet的各种状态:
APPSTATE_STOPPED 0 // Applet is stopped
APPSTATE_TOP_VISIBLE 1 // Applet is topmost visible application (foreground)
APPSTATE_SUSPENDED 2 // Applet is suspended
APPSTATE_BACKGROUND 3 // Applet is running in the background
APPSTATE_STARTING 4 // Applet is starting
APPSTATE_CLOSING 5 // Applet is closing

1、如果是oem的静态应用,可以这么认为;对于动态应用(有单独.mod文件的),是启动时才加载内存的;
2、问的比较杂,不知从何说起,sorry
  相关解决方案