Re: [問題] 如何讓瀏覽器不要轉址到手機版網頁?

看板AndroidDev作者 (殺人貓™)時間12年前 (2012/03/09 00:22), 編輯推噓3(3027)
留言30則, 6人參與, 最新討論串2/3 (看更多)
※ 引述《ippt (ippt)》之銘言: : 如題 : 我讓listener 做前往某網站其中一個頁面,大致code如下 : private void goToUrl(String url) { : Uri uri = Uri.parse(url); : Intent intent = new Intent(Intent.ACTION_VIEW, uri); : startActivity(intent); : } : 但是測試時總是被轉址到手機版網站的"首頁" : 讓我很困擾 ~"~ : 請問可以寫什麼code讓他不要轉址 : 希望能有好心的大大幫我解決困難 密技 只對沒有override掉原生瀏覽器的browser有用 1. 打開瀏覽器 2. 輸入about:debug 3. 它不會有任何變化,OK,不管它,按下menu 4. debug選單就出來了menu->more->settings 5. 選擇UA String(User Agent),選Desktop ok 這樣應該就不會被轉址了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.192.252.25

03/09 00:24, , 1F
喔對附帶一提 這樣會強迫網頁誤認為你是桌面板browser
03/09 00:24, 1F

03/09 00:24, , 2F
所以記得測試完畢以後調回去
03/09 00:24, 2F

03/09 08:31, , 3F
這個沒有開放API...
03/09 08:31, 3F

03/09 09:00, , 4F
感謝熱心回答,但是跟我要的東西有差距
03/09 09:00, 4F

03/09 09:01, , 5F
我想要的是User端不會被轉址
03/09 09:01, 5F

03/09 09:02, , 6F
不知道如果使用WebView有沒有這方面的api?
03/09 09:02, 6F

03/09 09:20, , 7F
這是不可能的 轉不轉是server決定的...
03/09 09:20, 7F

03/09 09:21, , 8F
如果他用js轉 關掉js有機會避開 但是他可能用server
03/09 09:21, 8F

03/09 09:21, , 9F
side來做redirect就沒辦法。看看關JS有沒有用吧
03/09 09:21, 9F

03/09 09:22, , 10F
不然就是得在WebViewClient hijack看看有沒有機會
03/09 09:22, 10F

03/09 09:22, , 11F
可是你又是用browser而不是webview 所以沒辦法 :Q
03/09 09:22, 11F

03/09 09:46, , 12F
我想用browser比較困難, 所以想用WebView試試看
03/09 09:46, 12F

03/09 10:02, , 13F
webview的話 setWebViewClient(WebViewClient)
03/09 10:02, 13F

03/09 10:03, , 14F
然後繼乘該WebViewClient, override裡面的
03/09 10:03, 14F

03/09 10:03, , 15F
shouldOverrideUrlLoading 用log.d去看
03/09 10:03, 15F

03/09 10:04, , 16F
不過我覺得轉址這樣搞能堵住,意義卻不太大
03/09 10:04, 16F

03/09 10:04, , 17F
畢竟只是會停在server「轉址寸前」那個頁面 應該也不會
03/09 10:04, 17F

03/09 10:04, , 18F
是你想要的結果
03/09 10:04, 18F

03/09 10:13, , 19F
我用browser他會先到我要的那一頁,然後又轉到手機版首頁
03/09 10:13, 19F

03/09 10:15, , 20F
所以可能ok?
03/09 10:15, 20F

03/09 12:13, , 21F
webview就是browser....可以說明差別在哪麼
03/09 12:13, 21F

03/09 12:35, , 22F
差多了 webview可以用WebViewClient/WebChromeClient
03/09 12:35, 22F

03/09 12:36, , 23F
去hijack他的行為 單單這點就已經根browser不同了
03/09 12:36, 23F

03/09 16:29, , 24F
override掉 要轉還是會轉 不覺得有什差別
03/09 16:29, 24F

03/09 17:21, , 25F
差別在於webview可以把標題烈拿掉,404換掉假裝成程式介面
03/09 17:21, 25F

03/09 21:48, , 26F
會嗎 shouldOverrideUrl就能擋下來了阿
03/09 21:48, 26F

03/09 21:48, , 27F
只是我不覺地擋掉就是他要的結果就是
03/09 21:48, 27F

03/10 11:59, , 28F
WebView的WebSetting不是有setUserAgentString嗎...
03/10 11:59, 28F

03/10 14:57, , 29F
樓上點出關鍵點了 XD
03/10 14:57, 29F

03/10 23:55, , 30F
= =a 不過我說改UA他說不是他想要的啊 XD
03/10 23:55, 30F
文章代碼(AID): #1FMDog1k (AndroidDev)
文章代碼(AID): #1FMDog1k (AndroidDev)