2015-01-20 2 views
1

Webview 사용 중 Android에서 웹 URL을로드 중입니다. 기본적으로 웹보기에서로드 중입니다. 로그인 페이지 웹 URL.이 페이지는 사용자가 Facebook 및 Google과 같은 openid를 사용하여 로그인 할 수 있도록합니다.webview가로드 된 후 안드로이드에서 다른 활동을 시작하는 방법은 무엇입니까?

내 시나리오는 사용자가 로그인 한 후에 다른 활동을 시작해야합니다. 지금까지 웹보기에서 나는 로그인 페이지 웹 URL을로드했습니다. 하지만 지금은 webview로드 된로드 된 후 다른 활동을 호출해야합니다. 그래서 내가 어떻게 얻을 수있는 사람을 도와주세요? 미리 감사드립니다. WebViewClient

의 onPageFinished
private class WebActivity extends WebViewClient { 

    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
    view.loadUrl(url); 
    return true; 
} 


    @Override 
    public void onPageFinished(WebView view, String url) { 
    super.onPageFinished(view, url); 
    //Call another activity 
    } 
} 
+0

[확인 (http://stackoverflow.com/questions/20791482/start-activity-intent-on-clicking-text-inside-webview) – Skynet

+0

'webView.setWebViewClient (새 WebViewClient() { @Override 공공 무효 onPageFinished (WebView를 웹, 문자열 URL) { // 새로운 활동 을 시작} });' – Hemanth

+0

덕분에 arol_123는 :) 해결책 : – user3824494

답변

1

재정 onPageFinished()와 또한 (로그인 후) 올바른 페이지에 있는지 확인, 그렇지 않으면 활동은 로그인 페이지를로드 할 때도 열립니다

+0

감사 다리오 .. 난을 가지고있어 솔루션을 얻었습니다. 정확한 코드가 작동합니다. :) 정말 고마워요. – user3824494

1

우선합니다.

webView.setWebViewClient(new WebViewClient(){ 
    @Override 
    public void onPageFinished(WebView view, String url) { 
     if(url.equals("url after sucessfull login")){ 
      Intent intent = new Intent(getApplicationContext(), YourActivity.class); 
      startActivity(intent); 
     } 
    } 
}); 
+0

감사 Jambaaz : 해결책 : – user3824494

0

나는 정확한 경험은 당신이가는 모르겠지만, 하나의 가능성은 앱의 의도 필터 중 하나에 매핑되는 페이지의 링크 가지고있다 -이 링크를 클릭 (또는 사용자를 리디렉션을 그것으로) 당신의 의도를 시작할 것입니다. 같은 링크에 대한 사용자 정의 구성표를 사용해야합니다.

Android Respond To URL in Intent은이를 수행하는 방법의 예를 보여줍니다. 이 링크를 클릭 할 때 UI에 어떤 일이 일어나는지에 대한 세부 사항을 알아 내야 할 것입니다. 최소한 사용자에게 피드백을 줄 필요가 있습니다. 또는 리디렉션의 경우 UI를 그릴 필요가 거의 확실합니다. Chrome은 앱을 시작하는 리디렉션의 빈 페이지로 이동하는 습관을 가지고 있으므로 UI를 렌더링하지 않고 리디렉션을 통해 실행하면 또는 window.location) 사용자는 빈 화면을 보게 될 것입니다.

관련 문제