android - How to submit form with values using jsoup? -


i working on application , need duplicate contact form website. http://www.telekino.com.ar/info/contacto. understand jsoup principles data, not concept send data. , submit button doesnt have web or mail address clear me send data.

this code

public class contactenos extends fragment {  public contactenos(){}  private drawerlayout mdrawerlayout; public static string namet; public static string localidadt; public static string telefonot; public static string emailt; public static string consultat; public static string maildestt; progressdialog mprogressdialog;   string url = "http://www.telekino.com.ar/info/contacto/#contactenos"; @override public view oncreateview(layoutinflater inflater, viewgroup container,                          bundle savedinstancestate) {      view rootview = inflater.inflate(r.layout.contacto, container, false);      edittext name=(edittext)rootview.findviewbyid(r.id.nombre);     edittext localidad=(edittext)rootview.findviewbyid(r.id.localidad);     edittext telefono=(edittext)rootview.findviewbyid(r.id.telefono);     edittext email=(edittext)rootview.findviewbyid(r.id.email);     edittext consulta=(edittext)rootview.findviewbyid(r.id.consulta);      radiogroup rg = (radiogroup) rootview.findviewbyid(r.id.maildest);      radiobutton rb = (radiobutton) rg.findviewbyid(rg.getcheckedradiobuttonid());     maildestt= string.valueof(rb);       namet = name.gettext().tostring();     localidadt = localidad.gettext().tostring();     telefonot = telefono.gettext().tostring();     emailt = email.gettext().tostring();     consultat=consulta.gettext().tostring();       button sendbut= (button)rootview.findviewbyid(r.id.sendbutton);     sendbut.setonclicklistener(new view.onclicklistener() {         @override         public void onclick(view v) {             new title().execute();          }     });         return rootview; }    // title asynctask private class title extends asynctask<void, void, void> {      string sorteofech;       @override     protected void onpreexecute() {         super.onpreexecute();         mprogressdialog = new progressdialog(getactivity());         mprogressdialog.settitle("telekino");         mprogressdialog.setmessage("enviando...");         mprogressdialog.setindeterminate(false);         mprogressdialog.show();     }       @override     protected void doinbackground(void... params) {          return null;     }      @override     protected void onpostexecute(void result) {         super.onpostexecute(result);         // connect server , post         try {             // connect web site             document doc = jsoup.connect(url)                     .data("nombre", namet)                     .data("localidad", localidadt)                     .data("telefono", telefonot)                     .data("email", emailt)                     .data("dpto", maildestt)                     .data("consulta", consultat)                     .post();              } catch (ioexception e) {             e.printstacktrace();         }         mprogressdialog.dismiss();      }   } 

}

this way crash, , not sure if work anyway.

this 1 teh logcat

07-15 12:37:35.899    1329-1329/info.blacktrail.telekino e/androidruntime﹕ fatal exception: main process: info.blacktrail.telekino, pid: 1329 android.os.networkonmainthreadexception         @ android.os.strictmode$androidblockguardpolicy.onnetwork(strictmode.java:1147)         @ libcore.io.blockguardos.recvfrom(blockguardos.java:249)         @ libcore.io.iobridge.recvfrom(iobridge.java:553)         @ java.net.plainsocketimpl.read(plainsocketimpl.java:485)         @ java.net.plainsocketimpl.access$000(plainsocketimpl.java:37)         @ java.net.plainsocketimpl$plainsocketinputstream.read(plainsocketimpl.java:237)         @ com.android.okio.okio$2.read(okio.java:113)         @ com.android.okio.realbufferedsource.exhausted(realbufferedsource.java:58)         @ com.android.okhttp.internal.http.httpconnection.isreadable(httpconnection.java:144)         @ com.android.okhttp.connection.isreadable(connection.java:259)         @ com.android.okhttp.internal.http.routeselector.next(routeselector.java:110)         @ com.android.okhttp.internal.http.httpengine.connect(httpengine.java:272)         @ com.android.okhttp.internal.http.httpengine.sendrequest(httpengine.java:211)         @ com.android.okhttp.internal.http.httpurlconnectionimpl.execute(httpurlconnectionimpl.java:382)         @ com.android.okhttp.internal.http.httpurlconnectionimpl.connect(httpurlconnectionimpl.java:106)         @ org.jsoup.helper.httpconnection$response.execute(httpconnection.java:449)         @ org.jsoup.helper.httpconnection$response.execute(httpconnection.java:434)         @ org.jsoup.helper.httpconnection.execute(httpconnection.java:181)         @ org.jsoup.helper.httpconnection.post(httpconnection.java:176)         @ info.blacktrail.telekino.contactenos$title.onpostexecute(contactenos.java:107)         @ info.blacktrail.telekino.contactenos$title.onpostexecute(contactenos.java:79)         @ android.os.asynctask.finish(asynctask.java:636)         @ android.os.asynctask.access$500(asynctask.java:177)         @ android.os.asynctask$internalhandler.handlemessage(asynctask.java:653)         @ android.os.handler.dispatchmessage(handler.java:102)         @ android.os.looper.loop(looper.java:135)         @ android.app.activitythread.main(activitythread.java:5257)         @ java.lang.reflect.method.invoke(native method)         @ java.lang.reflect.method.invoke(method.java:372)         @ com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:903)         @ com.android.internal.os.zygoteinit.main(zygoteinit.java:698) 

how can fix or best method reply contact form on android?

call connect method inside doinbackground. run network request in background thread.

onpostexecute run on main thread , not in background. background task, use doinbackground.

if want update ui results of http request, use doinbackground.


Comments