检测相机程序是否正在运行
文章信息
- 详细描述
为了查找相机程序是否正在运行,需要TApaTaskList查找当前正在运行的任务列表。
注意在有些手机上,如Nokia N93和Nokia N93i,相机程序总是运行在后台,而且在后台时在任务列表中是隐藏的。
- 解决方案
如果摄像头正在运行,而且没有隐藏在任务列表中,那么下列函数就会返回ETrue
需要能力:无
#include <apgtask.h> // link against apgrfx.lib
#include <apgwgnam.h>
// The UID of the native camera application
const TUid KNativeCameraAppUID = { 0x101ffa86 };
TBool CheckCameraStatusL()
{
TUid id( KNativeCameraAppUID );
TApaTaskList taskList( iWsSession ); // iWsSession is of type RWsSession
TApaTask task = taskList.FindApp( id );
if( task.Exists() )
{
CApaWindowGroupName* wgName =
CApaWindowGroupName::NewLC( iWsSession, task.WgId() );
TBool isHidden = wgName->Hidden();
CleanupStack::PopAndDestroy(); // wgName
if(!isHidden)
{
return ETrue;
}
}
return EFalse;
}


(no comments yet)