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
Post a Comment