Начнём с того, что есть некий сайт, его мобильная версия, построенный на Silverlight(как мне сказали знакомые разработчики, сам с веб-разработкой не знаком). На сайте есть форма логина, некое меню, доступное после логина и карта Яндекс. Как я понял из исходного кода страницы, всё выполняется полностью средствами ajax. Требуется написать андроид-приложение, полностью повторяющее функционал приложения. С какой проблемой столкнулся - в коде нашёл обработку логина | Код | function fun_ajax_login(login,password,host) { if(login==false) login =document.getElementById('IdLoginInputLogin').value; if(!login) {document.getElementById('IdLoginMessage').innerHTML='Поле "Логин" не заполнено.'; return;} if(password==false) password=document.getElementById('IdLoginInputPassword').value; if(!password) {document.getElementById('IdLoginMessage').innerHTML='Поле "Пароль" не заполнено.'; return;} if(host==false) host =document.getElementById('IdLoginInputHost').value; if(!host) {document.getElementById('IdLoginMessage').innerHTML='Поле "Сервер" не заполнено.'; return;} document.getElementById('IdLoginMessage').innerHTML = ""; document.getElementById('IdLoginLoginLoader').style.display = "inline"; setCookie("login", login, "01-Jan-2100 00:00:00 GMT", CookieDir); setCookie("host", host, "01-Jan-2100 00:00:00 GMT", CookieDir); oXml_login.open('GET', 'ajax/login.php?Login='+encodeURIComponent(login)+'&Password='+encodeURIComponent(password)+'&Host='+encodeURIComponent(host), true); oXml_login.onreadystatechange = fun_ajax_login_answer; oXml_login.send(); }
function fun_ajax_login_answer() { if(oXml_login.readyState!=4) return; UnitsList = eval('('+oXml_login.responseText+')'); if(UnitsList.Error=='true') { document.getElementById('IdLoginMessage').innerHTML = UnitsList.ErrorMessage; document.getElementById('IdLoginLoginLoader').style.display = "none"; return; } var str = "<table border='0px' cellpadding='2px' cellspacing='3px' class='units_fon' id='IdUnits_main'>"; var ff = 0; for(var f in UnitsList.Body) { str += "<tr id='IdUnits_n"+f+"' class='units_item_norm'>"; if(UnitsList.Body[f].Name == false) str += "<td width='25%' align='center' onclick='setCenterToUnit("+f+");'><div class='units_item_link'>Безимянный</div></td>"; else str += "<td width='25%' align='left' onclick='setCenterToUnit("+f+");'><div class='units_item_link'><nobr>"+ UnitsList.Body[f].Name +"</nobr></div></td>"; str += "<td align='left' width='47%' id='IdUnits_n"+f+"_addres'><div style='color: #aa0000;'>нет данных от терминала</div></td>"; str += "<td align='center' width='10%' id='IdUnits_n"+f+"_date'>не определено</td>"; str += "<td align='center' width='10%' id='IdUnits_n"+f+"_time'>-:-:-</td>"; str += "<td align='center' id='IdUnits_n"+f+"_speed'>стоит</td>"; UnitsList.Body[f].Latitude =false; UnitsList.Body[f].Longitude =false; UnitsList.Body[f].Angle =false; UnitsList.Body[f].Speed =false; UnitsList.Body[f].Addres =false; UnitsList.Body[f].AddresFlag =false; UnitsList.Body[f].DateTime =false; UnitsList.Body[f].Date =new Date(); UnitsList.Body[f].DateStr =false; UnitsList.Body[f].TimeStr =false; UnitsListAddres[ff]=f; ff++; } str+="</table>"; document.getElementById('IdUnitsList').innerHTML=str; document.getElementById('IdLogin').style.display="none"; gotoMenu(); fun_ajax_onlinedata_forall(); UnitsListAddres_num = 0; fun_ajax_addres(); }
|
Есть ли в java какие-либо аналоги данного кода: | Код | oXml_login.open(...) oXml_login.onreadystatechange =... oXml_login.send() ... if(oXml_login.readyState!=4) return;
|
или каким другим способом можно произвести коннект к серверу и получить ответ?
|