相关信息
本教程演示了如何获得信息的应用程序。
热身熟悉应用程序管理器API通过学习基本知识:
检索应用程序上下文和操作。
获取正在运行的应用程序上下文及其细节,和操作的上下文: 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.操作环境:
- 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;
- }
复制代码
|