2012-05-22 107 views
0

對不起,因爲我在這款Android開發中非常綠色,我可能在這裏擊敗死馬 我們使用的軟件tjat有一個移動版本,但它是一個移動網站,我我試圖使用webview將其構建到獨立的Web應用程序中。通過webview的Android驗證

該應用程序會讓我進入登錄屏幕,但是當我嘗試登錄顯示其登錄的彈出窗口時,以及在我的webview中,它仍然粘在那裏。它不會超越這一點。 在默認瀏覽器中,它工作正常。

你能幫我解釋一下我需要做什麼來以最簡單的方式獲得通過嗎? ;-) 謝謝!

package com.giantflyingsaucer; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.Window; 
import android.webkit.WebChromeClient; 
import android.webkit.WebView; 
import android.webkit.WebViewClient; 

public class WebPageLoader extends Activity 
{ 
final Activity activity = this; 

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    this.getWindow().requestFeature(Window.FEATURE_PROGRESS); 
    setContentView(R.layout.main); 
    WebView webView = (WebView) findViewById(R.id.webview); 
    webView.getSettings().setJavaScriptEnabled(true); 

    webView.setWebChromeClient(new WebChromeClient() { 
     public void onProgressChanged(WebView view, int progress) 
     { 
      activity.setTitle("Loading..."); 
      activity.setProgress(progress * 100); 

      if(progress == 100) 
       activity.setTitle(R.string.app_name); 
     } 
    }); 

    webView.setWebViewClient(new WebViewClient() { 
     @Override 
     public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) 
     { 
      // Handle the error 
     } 

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

    webView.loadUrl("http://URL.USED.FOR/WEBAPP"); 
} 
} 

回答

0

也許您的登錄嘗試使用某個Web插件。嘗試添加一個或兩個的這些:

mWebView.getSettings().setPluginState(WebSettings.PluginState.ON); 
    mWebView.getSettings().setPluginsEnabled(true); 
+0

謝謝!虐待這個嘗試。確切地說,是添加代碼的最佳位置。 –

+0

論兩行代碼,我GET- PluginState不能得到解決或無法在現場 mWebView解決不了 –

+0

你解決您的進口,這樣它會得到進口? – FoamyGuy

1

這是通過使用 @覆蓋 公共無效解決onConfigurationChanged(配置NEWCONFIG){ super.onConfigurationChanged(NEWCONFIG); }