[转加整理]Symbian下用C++实现网页浏览的代码
来源:互联网 发布:wcf服务编程第四版pdf 编辑:程序博客网 时间:2024/06/05 07:25
先声明一下,下面的这段代码是调用系统的浏览器实现网页浏览的功能,很显然这是一种比较简单的方法,但是它的可控制性就不行了,例如左软键的内容你是肯定该不了的。如何写一个自己的浏览器,而不调用系统的,等以后做出来再说吧。
调用系统的浏览器来实现网页浏览可以根据系统浏览器的状态而决定调用的方法,例如当系统浏览器正在使用的时候可以用TApaTask::SendMessage ()方法;当系统浏览器没有被使用的时候可以用RapaLsSession::StartDocument() 方法。
下面是实现代码:
TBool CinternetAppUi::ConnectL(const TDesC& addr)
{
const TInt KBrowserUid = 0x10008D39;
TUid id( TUid::Uid( KBrowserUid ) );
TApaTaskList taskList( CEikonEnv::Static()->WsSession() );
TApaTask task = taskList.FindApp( id );
// the system browser is in use
if ( task.Exists() )
{
HBufC8* param8 = HBufC8::NewLC( addr.Length() );
param8->Des().Append( addr );
task.SendMessage( TUid::Uid( 0 ), *param8 ); // Uid is not used
CleanupStack::PopAndDestroy();
}
// the system browser is not in use
else
{
RApaLsSession appArcSession;
User::LeaveIfError(appArcSession.Connect()); // connect to AppArc server
TThreadId id;
appArcSession.StartDocument( addr, TUid::Uid( KBrowserUid ), id );
appArcSession.Close();
}
return ETrue;
}
//其中入口参数addr的格式是“4”+” <Space>“+”<Url>”,例如“4 www.google.com”。
其中采用以上方法不仅仅可以用于开启网页,还可以用于启动安装sis/sisx,具体示例代码如下:
RApaLsSession installSession;
TThreadId threadId;
TUid uid;
uid.iUid = 0x101F875A;
installSession.Connect();
installSession.StartDocument(aFileName, uid, threadId);
installSession.Close();
该代码自己没有亲测过,但是从理论上说应该可行,而且有大牛说uid都不用传进去。
另外播放音乐文件,网上也说可以通过该方法来实现,Uid分别如下:
0x102072c3 (from S60 3rd Edition onwards)
0x6c5b9d2 (S60 2nd Edition)
RapaLsSession::StartDocument()功能还是很强大的,在这里只做摘录,以后有机会再亲测,不过用其打开网页的确可行。
- [转加整理]Symbian下用C++实现网页浏览的代码
- Symbian下用C++实现网页浏览的代码
- Symbian下用C++实现网页浏览的代码
- Symbian下用C++实现网页浏览的代码
- Symbian下用C++实现网页浏览的代码
- VB.NET2010 下HTTP代理浏览网页的实现
- 实现简单的网页浏览
- 贴下百度博客自动加好友的简单代码示例!!(c#.net实现)
- Linux下C代码浏览工具--cscope
- Symbian -打开系统浏览器浏览网页
- Symbian -打开系统浏览器浏览网页
- C语言实现几种编码形式的互转 -----(整理加原创)
- Linux下用W3M浏览网页
- ASP.NET图片加水印的实现代码(C#)
- ASP.NET图片加水印的实现代码(C#)
- 实现在文本(命令行)模式下浏览中文网页
- 编写安全的Symbian C 游戏代码
- 用C/C++实现软件代码区的动态加解密(SMC)
- 小学作业题 看图写数详细解答
- 理财第一步,是记账。
- 储存单位转换
- [整理]symbian中活动对象的简单使用
- pthread_create
- [转加整理]Symbian下用C++实现网页浏览的代码
- Oracle分析函数三——SUM,AVG,MIN,MAX,COUNT
- RConnection的简单使用两则
- 兴趣数据管理思路(1)
- 最新《币多理财助手PC版》截图
- 大端小端的判断
- 网管软体OpenNMS又得奖,推出IPhone Client,新版VMWare Appliance,企业实战经验分享
- javascript prototype 方法扩展
- 声音提示和震动提示的开发