我似乎无法让我的Apache服务器使用webview从我的android程序获取其凭据。它不会要求凭据。我不明白我错过了什么。
这是我的代码
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";
}
}
答案 0 :(得分:1)
您需要创建一个可以拦截授权请求的WebViewClient,然后您可以提供正确的凭据。请查看Android Developer文档,了解如何创建WebViewClient及其用途:http://developer.android.com/reference/android/webkit/WebViewClient.html。
这是一个很好的答案,你可以遵循。 Using WebView setHttpAuthUsernamePassword?
有不同类型的身份验证,例如Basic(看起来像你在这里尝试做的那样),NTLM等。每个都需要一种不同的方式来处理授权质询,但这应该有助于你理解基本的身份验证