大学で使用しているウェブサイトで自動認証を習得して実装するために、ずっと努力してきました。私は今、私は正常に私のアプリの自動認証の部分を設定していると信じていますが、今私は彼らがログイン段階を渡されたので、彼らにウェブサイトを表示する方法を知りません。私は自動認証の前にこれをどうやって行うのか知っていますが、私はJSoupを使って自動認証を行っているので、Webページを保持するDocument変数が残っています。 WebViewにドキュメントをロードして、手動でログインしたかのようにWebサイトを使用し続けることができますか、この問題を間違った方向に進めていますか?私はエラーを処理していないので、私のスレッドで.join()
メソッドを使用することもできませんが、このInteruptExceptionをどこで、どのように扱うべきかはわかりません。ここで自動認証後にJSoupドキュメントをwebviewに読み込む
は私のコードは、これまでのところです:
`
import android.graphics.Bitmap;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.CookieManager;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import org.apache.commons.codec.binary.Base64;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import java.io.IOException;
public class MainActivity extends AppCompatActivity {
private String url;
private WebView web;
private Document doc;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
web = (WebView) findViewById(R.id.webView);
CookieManager.getInstance().setAcceptCookie(true);
web.getSettings().setDomStorageEnabled(true);
System.out.println("About to try!!!!!!!!");
Thread thread = new Thread(new Runnable()
{
@Override
public void run()
{
String username2 = "*********";
String password2 = "*********";
String login = username2 + ":" + password2;
url = "https://hrorganiser.essex.ac.uk/";
String base64login = new String(Base64.encodeBase64(login.getBytes()));
try
{
doc = Jsoup.connect(url).header("Authorization", "Basic " + base64login).get();
System.out.println(">> Connection Successful");
}
catch (Exception e)
{
e.printStackTrace();
System.out.println(">> Connection To "+url+" Failed");
}
}
});
thread.start();
thread.join();
if (doc == null) {
System.out.println("Error Connecting...");
} else {
web.loadUrl(doc.html());
}
}
}`
を次の
String
に再フォーマットする必要があります、そしてすべての例では、オンラインで使用し、他のライブラリを実装するために私を必要としています。 CookieManager(私はjava.net.CookieManagerであると仮定しています)にCookieを追加する方法や情報を見つけることができません。 「偉大な答え」は、私が馬鹿にされていない限り、私がしていない図書館を使うようにも思えます...しかし、私が利用できるものでCookieタイプの変数を作成することはできません。また、Cookieマップは、POSTメソッドとGETメソッドの両方を使用して空であるようです。 – PythonLeech