2012-04-25 58 views
0

我似乎無法讓我的Apache服務器從我的android程序使用webview獲取其憑證。它不會要求憑證。我不明白我錯過了什麼。Android應用程序和Apache認證

這裏是我的代碼

package united.alert.mobile; 

    import android.app.Activity; 
    import android.os.Bundle; 
    import android.webkit.WebView; 

    public class UnitedAlertActivity extends Activity { 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    WebView myWebView = (WebView) findViewById(R.id.webview); 
    myWebView.loadUrl("http://unitedalert.info/m"); 
     } 

    public void PasswordAuthentication (String userName, String password){ 
    userName = "m*bile2012"; 
    password = "1234567"; 
     } 
    } 

回答

1

你需要創建一個WebViewClient可以攔截授權請求,然後你可以提供正確的憑據。查看關於如何創建WebViewClient的Android Developer文檔以及它的用途:http://developer.android.com/reference/android/webkit/WebViewClient.html

以下是您可以遵循的一個很好的答案。 Using WebView setHttpAuthUsernamePassword?

有不同類型的身份驗證,如基本(看起來像你在這裏要做什麼),NTLM等。每個人都需要不同的方式來處理授權挑戰,但這應該有助於你瞭解基本認證。