2012-09-17 2 views
1

웹 페이지에 "www.gmail.com"을로드합니다. 로그인 후 새 웹 페이지가로드됩니다. 즉 Google의 Gmail 계정 페이지가로드됩니다.android의 웹보기에서 다른 웹 페이지에서 웹 페이지를 리디렉션하는 방법

로그인 정보를 제출하고 새 웹 페이지가로드 될 때 해당 URL을 추적해야합니다. 웹 페이지로 리디렉션하기 위해 하드 코딩 된 값이 필요하지 않습니다. 웹 페이지가 다른 웹 페이지에서로드 될 때 해당 URL을 가져오고 싶습니다. 웹 페이지, 어떻게 할 수 있습니까? 제발 도와주세요.

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    title_text=(TextView)findViewById(R.id.urltxt); 
    showWeb=(WebView)findViewById(R.id.webview_details_body); 
    showWeb.setWebViewClient(new HelloWeb()); 
    showWeb.getSettings().setBuiltInZoomControls(true); 
    showWeb.getSettings().setLoadWithOverviewMode(true);//show the webpage in fullsize with all info 
    showWeb.getSettings().setUseWideViewPort(true); 
    WebSettings webSettings = showWeb.getSettings(); 
    webSettings.setJavaScriptEnabled(true); 

    showWebClick(); 

} 
private void showWebClick() { 
      showWeb.loadUrl("http://www.gmail.com/"); 


} 


public boolean onKeyDown(int keyCode,KeyEvent event){ 
    if((keyCode==KeyEvent.ACTION_DOWN)&&showWeb.canGoBack()){ 
     showWeb.goBack(); 
     return true; 
    } 
    return super.onKeyDown(keyCode, event); 
    } 
public class HelloWeb extends WebViewClient{ 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView vw,String url){ 
     vw.loadUrl(url); 
     s=vw.getUrl(); 
     title_text.setText(s); 
     return super.shouldOverrideUrlLoading(vw, url); 
    } 
} 

} 당신은 웹보기 클라이언트의 사용 방법의 getURL() 달성 할 수

답변

0

:

이 내 코드입니다.

그러나이 URL에 대한로드가 시작되었지만 현재 페이지가 변경되지 않았으므로 항상 WebViewClient.onPageStarted에 전달 된 URL과 같지는 않습니다.

당신은 아래 링크를 참조 할 수 있습니다 :

http://developer.android.com/reference/android/webkit/WebView.html#getUrl%28%29

그래서 당신은 onPageFinished 방법에 방법의 getURL 호출해야합니다. 괜찮을 꺼야.

@Override 공공 무효 onPageFinished (웹보기보기, 문자열 URL) {

 /*do your stuff here.*/ 

    } 
0

귀하의 webview 의지의 리디렉션의 URL과의 webviewclient에서 가장 가능성이 전화 중 shouldOverrideUrlLoading 또는 onLoadResource.

정확한 질문을 이해하는 경우 WebViewClient에서 onLoadResource을 무시하고 url 매개 변수를 확인하십시오.

onLoadResource을 사용하면 다른 리소스 (예 : 이미지)에 대한 URL도 생성됩니다.

관련 문제