Hallo zusammen,
bin jetzt deutlich weiter, habe auch den automatischen Login hinbekommen. Für alle die es interessiert hier der android java code zum login incl. dem neuen Login Verfahren für die FB mit md5 in der FB. Nach der Anmeldung wird dann ein Webview als Dialog aufgemacht in dem myFritz gestartet wird...
URLConnection yc;
String inputLine = "";
String Challenge = "";
String SID = "";
String fbPassWord = "xyz";
try {
URL myURL = new URL("http://" + fritzboxIP + "/login_sid.lua");
yc = myURL.openConnection();
BufferedReader in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
while ((inputLine = in.readLine()) != null)
{
System.out.println(inputLine);
Challenge = inputLine;
}
in.close();
Challenge = Challenge.substring(Challenge.indexOf("<Challenge>")+11);
Challenge = Challenge.substring(0, Challenge.indexOf("</Challenge>"));
String response = Challenge + "-" + md5 (Challenge + "-" + fbPassWord);
myURL = new URL("http://" + fritzboxIP + "/login_sid.lua?user=&response=" + response);
yc = myURL.openConnection();
in = new BufferedReader(new InputStreamReader(yc.getInputStream()));
while ((inputLine = in.readLine()) != null)
{
System.out.println(inputLine);
SID = inputLine;
}
in.close();
SID = SID.substring(SID.indexOf("<SID>")+5);
SID = SID.substring(0, SID.indexOf("</SID>"));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
AlertDialog.Builder alert11 = new AlertDialog.Builder(context);
alert11.setTitle("Fritzbox");
final WebView wv = new WebView(context);
wv.setInitialScale( (int) (65 * wv.getScale()) );
wv.getSettings().setJavaScriptEnabled(true);
wv.loadUrl("http://10.10.10.1/myfritz/?sid=" + SID + "#stay");
wv.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
});
alert11.setView(wv);
alert11.setNegativeButton("Close", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.dismiss();
}
});
alert11.show();