看板 AndroidDev 關於我們 聯絡資訊
※ 引述《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
Killercat:喔對附帶一提 這樣會強迫網頁誤認為你是桌面板browser 03/09 00:24
Killercat:所以記得測試完畢以後調回去 03/09 00:24
iincho:這個沒有開放API... 03/09 08:31
ippt:感謝熱心回答,但是跟我要的東西有差距 03/09 09:00
ippt:我想要的是User端不會被轉址 03/09 09:01
ippt:不知道如果使用WebView有沒有這方面的api? 03/09 09:02
Killercat:這是不可能的 轉不轉是server決定的... 03/09 09:20
Killercat:如果他用js轉 關掉js有機會避開 但是他可能用server 03/09 09:21
Killercat:side來做redirect就沒辦法。看看關JS有沒有用吧 03/09 09:21
Killercat:不然就是得在WebViewClient hijack看看有沒有機會 03/09 09:22
Killercat:可是你又是用browser而不是webview 所以沒辦法 :Q 03/09 09:22
ippt:我想用browser比較困難, 所以想用WebView試試看 03/09 09:46
Killercat:webview的話 setWebViewClient(WebViewClient) 03/09 10:02
Killercat:然後繼乘該WebViewClient, override裡面的 03/09 10:03
Killercat:shouldOverrideUrlLoading 用log.d去看 03/09 10:03
Killercat:不過我覺得轉址這樣搞能堵住,意義卻不太大 03/09 10:04
Killercat:畢竟只是會停在server「轉址寸前」那個頁面 應該也不會 03/09 10:04
Killercat:是你想要的結果 03/09 10:04
ippt:我用browser他會先到我要的那一頁,然後又轉到手機版首頁 03/09 10:13
ippt:所以可能ok? 03/09 10:15
gpc:webview就是browser....可以說明差別在哪麼 03/09 12:13
Killercat:差多了 webview可以用WebViewClient/WebChromeClient 03/09 12:35
Killercat:去hijack他的行為 單單這點就已經根browser不同了 03/09 12:36
gpc:override掉 要轉還是會轉 不覺得有什差別 03/09 16:29
LaPass:差別在於webview可以把標題烈拿掉,404換掉假裝成程式介面 03/09 17:21
Killercat:會嗎 shouldOverrideUrl就能擋下來了阿 03/09 21:48
Killercat:只是我不覺地擋掉就是他要的結果就是 03/09 21:48
nopeace:WebView的WebSetting不是有setUserAgentString嗎... 03/10 11:59
LaPass:樓上點出關鍵點了 XD 03/10 14:57
Killercat:= =a 不過我說改UA他說不是他想要的啊 XD 03/10 23:55