0

이전에 안드로이드 API 레벨 24 이하를 의미하는 webview를 사용 중이지만, API 레벨 24를 릴리스 한 후에 사용합니다.
apache http url connection을 사용하지 않습니다. 이 사용되지 않는 방법의 예를 사용할 수 없습니다 이런 이유로
업데이트 된 메소드를 사용하여 안드로이드 웹 뷰의 API 레벨 24에 따른 오래된 메소드

shouldOverrideUrlLoading(WebView view, String url)
내가이

을 사용할 수있는 방법이의 insted입니다 16,

shouldInterceptRequest(WebView, WebResourceRequest)

내 코딩은 변경 내가 지금 이것을 시도하고 이전에 쓰고 무엇을 원하는 결과를 얻기 위해 만든 수있는 비슷하지만

public class MainActivity extends AppCompatActivity { 
 
    TextView tv; 
 
    WebView webView; 
 
    private static final String FACEBOOK_URL="http://m.facebook.com"; 
 
    private static final String GMAIL_URL="http://m.gmail.com"; 
 

 

 
    @Override 
 
    protected void onCreate(Bundle savedInstanceState) { 
 
     super.onCreate(savedInstanceState); 
 
     setContentView(R.layout.activity_main); 
 
     tv=(TextView)findViewById(R.id.text_catch); 
 
     webView=(WebView)findViewById(R.id.web_search); 
 
     Button button=(Button)findViewById(R.id.button); 
 
     webView.setOnClickListener(new View.OnClickListener() { 
 
      @Override 
 
      public void onClick(View view) { 
 
       webView.setWebViewClient(new WebSearching()); 
 
WebSettings webSettings=webView.getSettings(); 
 
     webSettings.setJavaScriptEnabled(true); 
 
     webSettings.setLoadsImagesAutomatically(true); 
 
     webView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); 
 
     webView.loadUrl(FACEBOOK_URL); 
 
      } 
 
     }); 
 
} 
 
public class WebSearching extends WebViewClient{ 
 
@Override 
 
public boolean shouldOverrideUrlLoading(WebView view,Sting FACEBOOK_URL){ 
 
view.loadUrl(FACEBOOK_URL); 
 
return true; 
 
} 
 
} 
 
}
을 작동하지 않습니다

어떻게 새로운 API 레벨 24에 따라 이것을 변경할 수 있습니까? 철저히 검사하고 있습니다. n 안드로이드 응용 프로그램 개발자 웹 사이트가 있지만 아무것도 얻지 못한다면이 상황에서 벗어날 수 있도록 도와주세요. 이 시도 사전

+0

는'Deprecate'하지 않는 당신이 그것을 사용 할 수 없음을 의미, 그것은 사용하는 것이 좋습니다 더 나은 무언가가 있다는 뜻. –

+0

하지만 그 이유는 내가 view.loadUrl (FACEBOOK_URL)에서 문제를 직면하고있어; – ballu

+0

또한 새로운 하나를 어떻게 사용할 수 있습니까 – ballu

답변

1

감사 :

WebView wView; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 


    wView=(WebView)findViewById(R.id.webView1); 

    wView.setWebViewClient(new WebViewClient(){ 

     @Override 
     public void onPageStarted(WebView view, String url, Bitmap favicon) { 
      super.onPageStarted(view, url, favicon); 
     } 

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

     @Override 
     public void onPageFinished(WebView view, String url) { 
      super.onPageFinished(view, url); 
     } 



    }); 

    wView.getSettings().setJavaScriptEnabled(true); 
    wView.getSettings().setBuiltInZoomControls(true); 
    wView.addJavascriptInterface(this, "myinterface"); 




} 


public void displayMsg(String name,String pass){ 


    Toast.makeText(getApplicationContext(), name+"\n"+pass, 2000).show(); 

} 





public void test(View v){ 

    switch (v.getId()) { 
    case R.id.imageView1: 

     wView.loadUrl("http://www.facebook.com"); 



     break; 
    case R.id.imageView2: 

     wView.loadUrl("http://www.linkedin.com"); 

     break; 
    case R.id.imageView3: 

     wView.loadUrl("http://www.twitter.com"); 

     break; 
    case R.id.imageView4: 

     wView.loadUrl("http://www.youtube.com"); 

     break; 


    case R.id.imageView5: 

     wView.loadUrl("file:///android_asset/login.html"); 

     break; 



    } 





} 

}

+0

이 하나도 작동하지 않습니다 @Sarath – ballu