应用程序管理器Manager:应用程序的信息
相关信息[*]应用程序管理器指南
[*]应用程序管理器API
本教程演示了如何获得信息的应用程序。
热身熟悉应用程序管理器API通过学习基本知识:
检索应用程序上下文和操作。
[*]管理应用程序上下文
获取正在运行的应用程序上下文及其细节,和操作的上下文:
[*]使用的函数和数据类型 应用程序管理器Manager API,包括 < app_manager.h > 头文件在您的应用程序:
#include <app_manager.h>
2.得到当前运行的应用程序的上下文中。当应用程序没有运行,让它的上下文是不可能的。调用 app_manager_get_app_context () 功能与应用程序的ID,您需要获得,和上下文处理指针( app_context_h* ),这将被设置为应用程序的上下文:int ret;
app_context_h app_context = NULL;
char *my_app_id = NULL;
app_get_id(&my_app_id);
ret = app_manager_get_app_context(my_app_id, &app_context);
free(my_app_id);这个例子得到您的应用程序的上下文中。 如果函数返回 APP_MANAGER_ERROR_NONE ,它有正确执行和app_context 变量现在包含您的应用程序的上下文的句柄。 为了防止内存泄漏,释放 app_context 与app_context_destroy () 工作完成后的函数。
3.操作环境:
[*]获得的应用程序ID和应用程序进程ID上下文:
char *app_id;
int pid = 0;
ret = app_context_get_app_id(app_context, &app_id);
ret = app_context_get_pid(app_context, &pid);
[*]当 app_id 不再需要,释放它使用吗 free () 功能。
[*]检查应用程序是否与给定的应用程序上下文终止:
bool terminated = false;
ret = app_context_is_terminated(app_context, &terminated);
if (false == terminated)
{
// Application is running
}
else
{
// Application is terminated
}
复制上下文处理:app_context_h app_context_cloned = NULL;
ret = app_context_clone(&app_context_cloned, app_context);检查是否两个上下文是平等的:
bool equal = false;
ret = app_context_is_equal(app_context, app_context_cloned, &equal);
if (equal)
{
// Contexts are equal
}
else
{
// Contexts are not equal
}
4.在处理应用程序上下文完成后,调用 app_context_destroy () 函数删除处理和释放所有资源:
if (app_context)
{
ret = app_context_destroy(app_context);
if (APP_MANAGER_ERROR_NONE != ret) // Error occurred
app_context = NULL;
}
页:
[1]