利用应用UID调用应用程序

来源:互联网 发布:mac 复制快捷键 编辑:程序博客网 时间:2024/06/12 20:00

利用应用UID调用应用程序

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();

便可以调用浏览器并直接访问移动梦网。

以下是一些常用功能的UID:

浏览器0x10008D39;日历0x10005901;情景模式0x100058F8;名片夹0x101F4CCE;待办事项0x10005900; 通讯记录0x101F4CD5;多媒体资料0x101F8599;信息0x100058C5;蓝牙0x10005951;录音器0x100058CA; 单位换算0x101F4668;计算器0x10005902;相机0x1000593F(2版)0x101f857A 0x101ffa86(3版)。

原创粉丝点击