Guten Tag, ich programmiere seit kurzem auch für Android und wollte als erstes einen Bot zum einloggen und Nachrichten checken schreiben. Nach ein paar kleinen Tests kommt es mir aber so vor, als sei mein "Einlogg-algorithmus" nicht sehr effizient(er brauchte am Anfang mehere Minuten, aber nachdem ich den "User-Agent" entfernt habe, geht es nur noch so um die 15 Sekunden).
Nun ist meine Frage: mache ich etwas falsch oder ist das normal? bzw Was könnte ich verbessern?
Vielen Dank schon mal im voraus,
Twilight
EDIT: Ich programmiere mit Eclipse (mit Android Plugin) und für Android 2.2. Ich teste die Anwendung via Vitual Device (Auch Android 2.2).
Hier der Code:
Nun ist meine Frage: mache ich etwas falsch oder ist das normal? bzw Was könnte ich verbessern?
Vielen Dank schon mal im voraus,
Twilight
EDIT: Ich programmiere mit Eclipse (mit Android Plugin) und für Android 2.2. Ich teste die Anwendung via Vitual Device (Auch Android 2.2).
Hier der Code:
Java:
public void doLogin(String name, String password) throws Exception {
HttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://www.java-forum.org/");
HttpResponse httpRes = client.execute(httpGet);
HttpPost httpPost = new HttpPost(
"http://www.java-forum.org/login.php?do=login");
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("vb_login_username", name));
nameValuePairs.add(new BasicNameValuePair("cookieuser", "1"));
nameValuePairs
.add(new BasicNameValuePair("vb_login_password", password));
nameValuePairs.add(new BasicNameValuePair("s", ""));
nameValuePairs.add(new BasicNameValuePair("securitytoken", "guest"));
nameValuePairs.add(new BasicNameValuePair("do", "login"));
/*
* <input type="hidden" name="vb_login_md5password" /> <input
* type="hidden" name="vb_login_md5password_utf" /> //was damit machen?
*/
httpPost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
httpRes = client.execute(httpPost);
httpGet = new HttpGet("http://www.java-forum.org/");
httpRes = client.execute(httpGet);
httpGet = new HttpGet("http://www.java-forum.org/usercp.php");
httpRes = client.execute(httpGet);
BufferedReader br = new BufferedReader(new InputStreamReader(httpRes.getEntity().getContent()));
String readLine;
String back = "";
while (((readLine = br.readLine()) != null)) {
back += readLine + "\n";
}
EditText text = (EditText)findViewById(R.id.editText1);
text.setText(back);
if (back.contains("Seit Ihrem letzten Besuch wurde in Ihren abonnierten Themen kein neuer Beitrag geschrieben.")) {
text.setText("Nichts neues!");
}
client.getConnectionManager().shutdown();
}
Zuletzt bearbeitet: