2013-09-03 2 views
0

Я создаю простое приложение веб-просмотра, которое показывает страницу форума. Конечно, страница форума попросит войти в систему или зарегистрироваться, но когда я нахожусь там, и я пытаюсь войти в систему, приложение попросит меня продолжить после входа в предпочтительный браузер. Я не хочу это делать, но я хочу продолжить в своем заявление. Есть ли способ? Форум размещен на сайте proboards.com, если это необходимо. Код приложения очень прост.Войти в WebView оставаться в браузере

MainActivity.java

public class MainActivity extends Activity { 

    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     webView = (WebView) findViewById(R.id.webView); 
     webView.getSettings().setJavaScriptEnabled(true); 
     webView.loadUrl("http://www.website.com"); 

    } 

} 

ответ

2

Я не слишком уверен, что вы хотите точно. Сообщите мне, если это то, что вы хотели.

Когда вы работаете с webviews, если вы хотите остаться в webview во всем сказать один конкретный веб-сайт и не позволить любой веб открыть в браузере, но сам webview то вы можете сделать следующее:

в вашем случае имя веб-сайт

"http://www.website.com"

Поэтому код должен быть:

  webView.loadUrl("http://www.website.com"); 
      WebSettings webSettings = webView.getSettings(); 
      webSettings.setJavaScriptEnabled(true); 
      webView.setWebViewClient(new WebViewClient(){ 
       @Override 
       public boolean shouldOverrideUrlLoading(WebView view, String url) { 
        try { 
         URL urlObj = new URL(url); 
         if((url.startsWith("http://www.website.com"))) { 
         //Allow the WebView in your application to do its thing 
         return false; 
         } else { 
         //Pass it to the system, doesn't match your domain 
         Intent intent = new Intent(Intent.ACTION_VIEW); 
         intent.setData(Uri.parse(url)); 
         startActivity(intent); 
         //Tell the WebView you took care of it. 
         return true; 
         } 
        } 
        catch (Exception e) { 
         e.printStackTrace(); 
        } 
        return false; 

       } 
      }); 
      { 

      } 

Таким образом, любая страница на этом веб-сайте откроется в веб-обозревателе, а не в браузере. Надеюсь это поможет.

+0

позже я попробую спасибо :) –

+0

добро пожаловать –

Смежные вопросы