• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            franksunny的個(gè)人技術(shù)空間
            獲得人生中的成功需要的專注與堅(jiān)持不懈多過天才與機(jī)會(huì)。 ——C.W. Wendte

             先聲明一下,下面的這段代碼是調(diào)用系統(tǒng)的瀏覽器實(shí)現(xiàn)網(wǎng)頁(yè)瀏覽的功能,很顯然這是一種比較簡(jiǎn)單的方法,但是它的可控制性就不行了,例如左軟鍵的內(nèi)容你是肯定該不了的。如何寫一個(gè)自己的瀏覽器,而不調(diào)用系統(tǒng)的,等以后做出來(lái)再說吧。

            調(diào)用系統(tǒng)的瀏覽器來(lái)實(shí)現(xiàn)網(wǎng)頁(yè)瀏覽可以根據(jù)系統(tǒng)瀏覽器的狀態(tài)而決定調(diào)用的方法,例如當(dāng)系統(tǒng)瀏覽器正在使用的時(shí)候可以用TApaTask::SendMessage ()方法;當(dāng)系統(tǒng)瀏覽器沒有被使用的時(shí)候可以用RapaLsSession::StartDocument() 方法。

            下面是實(shí)現(xiàn)代碼:

            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;

            }

            //其中入口參數(shù)addr的格式是4”+” <Space>“+”<Url>”,例如“4  www.google.com。

             

            其中采用以上方法不僅僅可以用于開啟網(wǎng)頁(yè),還可以用于啟動(dòng)安裝sis/sisx,具體示例代碼如下:

            RApaLsSession installSession;

            TThreadId threadId;

            TUid uid;

            uid.iUid = 0x101F875A;

            installSession.Connect();

            installSession.StartDocument(aFileName, uid, threadId);

            installSession.Close();

            該代碼自己沒有親測(cè)過,但是從理論上說應(yīng)該可行,而且有大牛說uid都不用傳進(jìn)去。

            另外播放音樂文件,網(wǎng)上也說可以通過該方法來(lái)實(shí)現(xiàn),Uid分別如下:

            0x102072c3 (from S60 3rd Edition onwards)

            0x6c5b9d2 (S60 2nd Edition)

            RapaLsSession::StartDocument()功能還是很強(qiáng)大的,在這里只做摘錄,以后有機(jī)會(huì)再親測(cè),不過用其打開網(wǎng)頁(yè)的確可行。

             

             

             

             

             

            posted on 2009-08-12 17:36 frank.sunny 閱讀(1077) 評(píng)論(0)  編輯 收藏 引用 所屬分類: C/C++學(xué)習(xí)和實(shí)踐 、symbian 開發(fā)

            常用鏈接

            留言簿(13)

            隨筆分類

            個(gè)人其它博客

            基礎(chǔ)知識(shí)鏈接

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            色88久久久久高潮综合影院| 93精91精品国产综合久久香蕉 | 色99久久久久高潮综合影院| 亚洲国产成人精品91久久久 | 国产精品久久久久久久久软件| 一级做a爰片久久毛片毛片| 欧美日韩精品久久久久| 99久久精品国产麻豆| 性欧美大战久久久久久久| 国产午夜久久影院| 亚洲人成无码www久久久| 国产精品久久久久aaaa| 久久精品国产精品亚洲精品 | 国产成人综合久久综合| 久久黄视频| 国内精品伊人久久久久av一坑| 国产香蕉97碰碰久久人人| 久久亚洲春色中文字幕久久久 | 色狠狠久久综合网| 国产精品欧美久久久久天天影视 | 香蕉aa三级久久毛片| 免费国产99久久久香蕉| 中文国产成人精品久久不卡 | 亚洲av日韩精品久久久久久a| 夜夜亚洲天天久久| 国产精品一久久香蕉国产线看观看| 日韩十八禁一区二区久久| 99久久国产综合精品成人影院| 久久久久亚洲av无码专区喷水| 久久久亚洲欧洲日产国码是AV| 久久久久97国产精华液好用吗| 热99re久久国超精品首页| 久久久久亚洲AV无码麻豆| 亚洲精品乱码久久久久66| 久久精品国产2020| 97精品国产97久久久久久免费| 亚洲人成无码www久久久| 久久婷婷五月综合国产尤物app| 亚洲人成无码www久久久 | 7国产欧美日韩综合天堂中文久久久久 | 97精品伊人久久大香线蕉|