void OpenUrlL(const TDesC& aUrl)
{
if(aUrl.Length() <= 0)
return;
HBufC* param= HBufC::NewLC(aUrl.Length() + 8);
param->Des().Format(_L( "4 %S" ),&aUrl);
// WapBrowser's constants UId
const TIntKWmlBrowserUid = 0x1020724D;
TUidid(TUid::Uid(KWmlBrowserUid));
TApaTaskListtaskList(CEikonEnv::Static()->WsSession());
TApaTasktask = taskList.FindApp(id);
if(task.Exists())
{
HBufC8* param8 = HBufC8::NewLC(param->Length() *4);
param8->Des().Append(*param);
task.SendMessage(TUid::Uid(0), *param8); // Uid is not used
CleanupStack::PopAndDestroy(); // param8
}
else
{
RApaLsSession appArcSession;
User::LeaveIfError(appArcSession.Connect()); // connect to AppArcserver
TThreadId id;
appArcSession.StartDocument(*param, TUid::Uid(KWmlBrowserUid),id);
appArcSession.Close();
}
CleanupStack::PopAndDestroy(); // param
}
然而在S603rd的设备上存在两个浏览器"网络"和"服务","网络"UID是0x1020724D,"服务"的UID是0x10008D39,上面的代码会启动"服务",但是确不能打开指定的网页,如果把UID换成"网络"的UID是可以正常打开的,可是在S603rdFP1的设备上只剩下一个浏览器,UID为0x10008D39,这就造成了代码通用性的问题,为了避免生成两个版本的程序,我们可以首先查找0x1020724D这个UID对应的程序是否在系统中存在,如果存在说明手机的基于S603rd的,如果不存那么就是基于S60 3rd FP1的,这时我们使用0x10008D39就可以了。
void CShowTimeAppUi::OpenUrlL(const TDesC&aUrl)
{
if(aUrl.Length() <= 0)
return;
const TIntKBrowserUid1 = 0x1020724D;
const TIntKBrowserUid2 = 0x10008D39;
RApaLsSession appArcSession;
User::LeaveIfError(appArcSession.Connect()); // connect to AppArcserver
HBufC* param= HBufC::NewLC(aUrl.Length() + 8);
param->Des().Format(_L( "4 %S" ),&aUrl);
// WapBrowser's constants UId
TUidbrowserId(TUid::Uid(KBrowserUid1));
TApaAppInfoappInfo;
if(appArcSession.GetAppInfo(appInfo, browserId) != KErrNone)
{
browserId = TUid::Uid(KBrowserUid2);
}
TApaTaskListtaskList(CEikonEnv::Static()->WsSession());
TApaTasktask = taskList.FindApp(browserId);
if(task.Exists())
{
HBufC8* param8 = HBufC8::NewLC(param->Length() *4);
param8->Des().Append(*param);
task.SendMessage(TUid::Uid(0), *param8); // Uid is not used
CleanupStack::PopAndDestroy(); // param8
}
else
{
TThreadId id;
appArcSession.StartDocument(*param, browserId, id);
}
appArcSession.Close();
CleanupStack::PopAndDestroy(); // param
}
转自:http://aptana.blog.163.com/blog/static/120326010200952043045152/
分享到:
相关推荐
全世界最受欢迎的新一代浏览器欧朋Opera,简约、精致、时尚,摆脱拥挤,复杂的手机浏览器界面,打造个性化的浏览器。 1、快速拨号 “快速拨号”将喜欢的网站添加到首页,实现一键点击访问。通过定制“快速拨号”,你...
专为Symbian S60第三版/第五版 智能操作系统量身打造的摩安垃圾短信过滤专家。免设置,全自动智能过滤垃圾...我们团队自主开发的产品,已经通过symbian签名认证,下载后直接可以在S60第三版,第五版手机上安装使用。
Symbian C++开发经验(针对S60第三版) Symbian C++开发经验(针对S60第三版)
UC 塞班S60V3版
浏览器分享功能,可以让您一键将网页分享到不同的社交网络,与好友时刻共享互联网乐趣。 9、极速,超省流量 极速浏览 凭借高效成熟的“云端”压缩和转码技术,欧朋手机浏览器上网的速度远快于其它一般手机浏览器。...
symbian s60第三版socket通信例子,适用于初学者!
优势UC浏览器 for S60V2 优势UC浏览器 for S60V2
Symbian S60 V3软件Symbian S60 V3软件Symbian S60 V3软件Symbian S60 V3软件Symbian S60 V3软件Symbian S60 V3软件Symbian S60 V3软件Symbian S60 V3软件打包下载 我佛痴悲 石祖江Symbian S60 V3软件打包下载 我佛...
老版本微信,支持大部分s60v3系统的诺基亚手机,塞班手机党的福利~
SYMBIAN NOKIA 开机 自启动 c++源代码 S60 第三版
诺基亚塞班S60第三版机型,英汉双向词典词库,解压后把Private文件夹拷贝到存储卡即可。
Symbian S60 V3软件打包下载Symbian S60 V3软件打包下载Symbian S60 V3软件打包下载Symbian S60 V3软件打包下载Symbian S60 V3软件打包下载Symbian S60 V3软件打包下载Symbian S60 V3软件打包下载Symbian S60 V3软件...
全世界最受欢迎的新一代浏览器欧朋Opera,简约、精致、时尚,摆脱拥挤,复杂的手机浏览器界面,打造个性化的浏览器。 1、快速拨号 “快速拨号”将喜欢的网站添加到首页,实现一键点击访问。通过定制“快速拨号”,你...
一键破解HelloOX v2.2 修正版 下载后需签名安装
塞班s60v3破解文件塞班s60v3破解文件塞班s60v3破解文件塞班s60v3破解文件塞班s60v3破解文件
qq 手中邮 塞班 s60 三版 qq 手中邮 塞班 s60 三版 qq 手中邮 塞班 s60 三版
绝对飞信塞班S60V5全屏触摸版,支持5800,N97s60v5版手机
非常好用的手机防盗追踪软件,可以监控手机的短信、电话记录等。这个是Symbian S60第三版和第五版通用的版本。
s60 5th第五版symbian开发示例程序 通过它学习如何开发sis程序
免刷机破解塞班 s60 v3 v5 证书 签证