From Forum Nokia Wiki
利用应用UID调用应用程序通常有两种方法:
一.使用CCoeAppUi::ActivateViewL方法
例如:
const TUid KApplicationUid = { 0x101f857A }; //应用UID(相机)
const TUid KApplicationViewId = { 1 }; //视图ID
CCoeAppUi::ActivateViewL(TVwsViewId(KApplicationUid, KApplicationViewId));
便可以激活相机程序。
二.使用TApaTask类
第一种方法虽简单,但一般只在CCoeAppUi派生类中起作用,且无法带参数运行程序,所以我们会时常使用另一种方法:
HBufC* parameter = HBufC::NewLC( 20 );
parameter->Des().Copy( _L( "4 wap.monternet.com/" ) );
TInt KApplicationUid = 0x10008D39;
TUid id( TUid::Uid( KApplicationUid ) );
TApaTaskList taskList( CEikonEnv::Static()->WsSession() );
TApaTask task = taskList.FindApp( id );
if ( task.Exists() )
{
HBufC8* parameter8 = HBufC8::NewLC( parameter->Length() );
parameter8->Des().Append( *parameter );
task.SendMessage( TUid::Uid( 0 ), *parameter8 );
CleanupStack::PopAndDestroy();
}
else
{
RApaLsSession appArcSession;
User::LeaveIfError(appArcSession.Connect());
TThreadId id;
appArcSession.StartDocument( *parameter, TUid::Uid( KApplicationUid ), id );
appArcSession.Close();
}
CleanupStack::PopAndDestroy();
便可以调用浏览器并直接访问移动梦网。