鼓勵此網誌:0
最近被開啟網頁的功能搞得天昏地暗...
原本以為跟 Windows 系統一樣用「開啟文件」的方式,
把網址用文件方式打開,系統應該就會使用預設瀏覽器開啟該網頁,
結果我太嫩了......= =|||b
網路上找半天,
大部分都是討論「如何連接網路」、「如何做 web connection」,
也就是這些程式做的事情相當於「做一個 FTP」或是「開發一個 web browser」;
我不需要這麼複雜的功能,
我要的功能僅僅是「可以開啟特定網址的網頁」就好。
找了好久,同事找到了「Launching the Web browser on S60 3rd Edition to open a specified URL」這一篇有講在 S60 3rd 系統上如何開啟特定網址的網頁,
正是我所需要的,
其實照著網頁上的範例就可以實做出來了耶!XD
|
RApaLsSession apaLsSession; TUid KOSSBrowserUidValue; HBufC* param = HBufC::NewLC(64); TUid id(KOSSBrowserUidValue); if( task.Exists() ) CleanupStack::PopAndDestroy(param); |
不過在「」這一篇也有提到,
在 S60 3rd Edition, FP1 devices 上 UID 必須設為
const TUid KOSSBrowserUidValue = {0x10008D39};
這是因為 S60 3rd 平台上有兩個 browsers:「Services」和「Web」,
而在 S60 3rd FP1 平台上只使用其中一個的緣故。
不過我搞不懂的是,那兩個都用相同的那個 UID 不就好了嗎?
還是說「Services」在非 FP1 的平台上不好用的緣故?
匪夷所思啊~~@@
所以延伸出來的課題就是:如何判斷手機的作業平台?
在「Different browser UIDs in S60 3rd Edition and S60 3rd Edition, FP1」文件中有提到如何取得 Machine ID & platform version,
但我很想知道有沒有可以直接得到 Platform ID 的方法,
這才是比 Machine ID 更有用的資訊啊!
不過沒有這樣的資訊,
所以最後是使用 Platform Version~~= =|||
| /******Detecting the device at run time with the Machine UID****** #include <hal.h> // link against hal.lib TInt uid; HAL::Get(HAL::EMachineUid, uid); |
|
/******Detecting the platform version at run time****** void GetS60PlatformVersionL( RFs& aFs, TUint& aMajor, TUint& aMinor ) |
其實查資料時,有人說可以把得到 Machine ID 的參數換成 EManufacturerSoftwareRev,
或是使用 TVersion osVersion = User::Version(); 的方式,
但都沒用。
(C:\Symbian\9.1\S60_3rd_MR\Epoc32\include\hal.h;C:\Symbian\9.1\S60_3rd_MR\Epoc32\include\hal_data.h)
解決完 S60 3rd 的之後,
就是頭大的 S60 2nd 啦。
找了好久,都沒有這方面的文件,
即使有人問也沒人回答(真的很討厭那種回答:「去網路上找找看啊」的人="=),
所以後來我使用別的關鍵字搜尋,一頁一頁過濾,
終於讓我找到「How to start web browser to open the specified URL on s60 2.0 fp3? - Developer Discussion Boards」這一篇,
才赫然發現原來把 Browser UID 改成 S60 3rd FP1 的就可以!
天啊~~讓我煩惱這麼久~~=A=
- Launching the Web browser on S60 3rd Edition to open a specified URL
- Different browser UIDs in S60 3rd Edition and S60 3rd Edition, FP1
- Resource information: S60 Platform: Identification Codes v1.9
- How to get platform id - Developer Discussion Boards
- How to get platform version, OsVersion programatically. - Developer Discussion Boards
- How to start web browser to open the specified URL on s60 2.0 fp3? - Developer Discussion Boards
- Nokia论坛技术资料Symbian解决方案-中文版[申请置顶] - Developer Discussion Boards 〔大陸的強者提供的好技術資料,只不過要自己一頁一頁尋寶XDb〕








