Coudn't connect to online database in Android app -


i'm trying connect app online database, have php files working, app don't connect database. have simple data insertion , data retrieve. keep getting null pointer exception.

regoneactivity.java

import android.app.activity; import android.content.intent; import android.content.sharedpreferences; import android.content.sharedpreferences.editor; import android.os.bundle; import android.view.menu; import android.view.menuitem; import android.view.view; import android.widget.button; import android.widget.edittext;  public class regoneactivity extends activity {    button okabtn,regbtn; edittext phno,password; string phone,pass;  @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_reg_one);     password = (edittext) findviewbyid(r.id.passwordedittext);     okabtn =(button) findviewbyid(r.id.okbtn);     phno = (edittext) findviewbyid(r.id.edittextpass1);     regbtn = (button) findviewbyid(r.id.createbtn);     regbtn.setonclicklistener(new view.onclicklistener() {          @override         public void onclick(view v) {             // todo auto-generated method stub          intent in = new intent(regoneactivity.this, passwordactivity.class);         startactivity(in);            }     });      okabtn.setonclicklistener(new view.onclicklistener() {          @override         public void onclick(view v) {             // todo auto-generated method stub             phone = phno.gettext().tostring();             pass = password.gettext().tostring();             string method = "login";             /*registerbackgroung background = new registerbackgroung(getapplicationcontext());*/             registerbackgroung background = new registerbackgroung(regoneactivity.this);             background.execute(method, phone, pass);             intent in = new intent(regoneactivity.this, mapactivity.class);             startactivity(in);               regoneactivity.this.finish();         }     });   }   @override  public boolean oncreateoptionsmenu(menu menu) {     // inflate menu; adds items action bar if present.     getmenuinflater().inflate(r.menu.reg_one, menu);     return true;   }    @override   public boolean onoptionsitemselected(menuitem item) {     // handle action bar item clicks here. action bar     // automatically handle clicks on home/up button, long     // specify parent activity in androidmanifest.xml.     int id = item.getitemid();     if (id == r.id.action_settings) {         return true;     }     return super.onoptionsitemselected(item);     }  } 

passwordactivity.java

import android.app.activity; import android.content.intent; import android.os.bundle; import android.view.menu; import android.view.menuitem; import android.view.view; import android.widget.button; import android.widget.edittext;   public class passwordactivity extends activity {    button btn; edittext password1,password2,phone; string pass1,pass2,phonenumber; @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_password);      btn =(button) findviewbyid(r.id.proceed1act);     password1 = (edittext) findviewbyid(r.id.edittextpass1);     phone = (edittext) findviewbyid(r.id.phoneedt);     password2 = (edittext) findviewbyid(r.id.edittextpass2);     btn.setonclicklistener(new view.onclicklistener() {          @override         public void onclick(view v) {             // todo auto-generated method stub              pass1 = password1.gettext().tostring();             pass2 = password2.gettext().tostring();             phonenumber = phone.gettext().tostring();             string method= "register";             registerbackgroung backtask = new registerbackgroung(passwordactivity.this);             backtask.execute(method,phonenumber,pass1);              intent in = new intent(passwordactivity.this, regoneactivity.class);                     startactivity(in);             passwordactivity.this.finish();         }     }); }  @override public boolean oncreateoptionsmenu(menu menu) {     // inflate menu; adds items action bar if present.     getmenuinflater().inflate(r.menu.password, menu);     return true; }  @override public boolean onoptionsitemselected(menuitem item) {     // handle action bar item clicks here. action bar     // automatically handle clicks on home/up button, long     // specify parent activity in androidmanifest.xml.     int id = item.getitemid();     if (id == r.id.action_settings) {         return true;     }     return super.onoptionsitemselected(item); } } 

registerbackground.java

import java.io.bufferedoutputstream; import java.io.bufferedreader; import java.io.bufferedwriter; import java.io.ioexception; import java.io.inputstream; import java.io.inputstreamreader; import java.io.outputstream; import java.io.outputstreamwriter; import java.net.httpurlconnection; import java.net.malformedurlexception; import java.net.uri; import java.net.url; import java.net.urlencoder;  import android.app.alertdialog; import android.app.dialog; import android.app.progressdialog; import android.content.context; import android.content.sharedpreferences; import android.content.sharedpreferences.editor; import android.os.asynctask; import android.widget.toast;  public class registerbackgroung  extends asynctask<string, void, string>{  context ctx; alertdialog diag; sharedpreferences sp; editor edt; public registerbackgroung(context ctx) {      this.ctx = ctx; } @override protected string doinbackground(string... params) {     // todo auto-generated method stub     string urlregister = "http://www.locationsharing.16mb.com/register.php";      string login = "http://www.locationsharing.16mb.com/retrieve.php";     string method = params[0];     if(method.equals("register"))     {     string phone = params[1];     string pass = params[2];      try {         url reg_url = new url(urlregister);         httpurlconnection httpurlconnection = (httpurlconnection) reg_url.openconnection();         httpurlconnection.setrequestmethod("post");         httpurlconnection.setdooutput(true);         outputstream os = httpurlconnection.getoutputstream();         bufferedwriter bufferedwriter = new bufferedwriter(new outputstreamwriter(os, "utf-8"));         string data = urlencoder.encode("phonenumber", "utf-8")+"="+urlencoder.encode(phone, "utf-8")+"&"+                  urlencoder.encode("password", "utf-8")+"="+urlencoder.encode(pass, "utf-8");         bufferedwriter.write(data);         bufferedwriter.flush();         bufferedwriter.close();          inputstream = httpurlconnection.getinputstream();         is.close();         return "registration successful!";     } catch (ioexception e) {         // todo auto-generated catch block         e.printstacktrace();     }       }      else if(method.equals("login")){          string phone = params[1];         string pass = params[2];          try {             url url = new url(login);             httpurlconnection httpurlconnection = (httpurlconnection) url.openconnection();             httpurlconnection.setrequestmethod("post");             httpurlconnection.setdooutput(true);             httpurlconnection.setdoinput(true);             outputstream os = httpurlconnection.getoutputstream();             bufferedwriter bw= new bufferedwriter(new outputstreamwriter(os,"utf-8"));              string data = urlencoder.encode("phonenumber", "utf-8")+"="+urlencoder.encode(phone, "utf-8")+"&"+                      urlencoder.encode("password", "utf-8")+"="+urlencoder.encode(pass, "utf-8");               bw.write(data);               bw.flush();               bw.close();               os.close();                 inputstream = httpurlconnection.getinputstream();               bufferedreader br = new bufferedreader(new inputstreamreader(is,"iso-8859-1"));               string response = "";               string line = "";                while((line = br.readline())!=null)               {                   response += line;                 }               br.close();               is.close();               httpurlconnection.disconnect();               return response;         } catch (ioexception e) {             // todo auto-generated catch block             e.printstacktrace();         }       } return null; }  @override protected void onpreexecute() {     // todo auto-generated method stub     super.onpreexecute();     diag.settitle("login information"); }  @override protected void onpostexecute(string result) {     // todo auto-generated method stub     super.onpostexecute(result);     if(result.equals("registration successful!"))     {     toast.maketext(ctx, result, toast.length_long).show();     }     else     {          diag.setmessage(result);         diag.show();     }   }    } 

manifest file:

<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.lavisor.locationsharing2" android:versioncode="1" android:versionname="1.0" >  <uses-sdk     android:minsdkversion="14"     android:targetsdkversion="15" />    <permission     android:name="com.testing.svma.permission.maps_receive"     android:protectionlevel="signature" />  <uses-permission android:name="android.permission.read_contacts" /> <uses-permission android:name="com.testing.svma.permission.maps_receive" /> <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="android.permission.access_network_state"/> <uses-permission android:name="android.permission.write_external_storage" /> <uses-permission android:name="android.permission.access_coarse_location" /> <uses-permission android:name="android.permission.access_fine_location" /> <uses-permission android:name="com.google.android.providers.gsf.permission.read_gservices" />   <application     android:allowbackup="true"     android:icon="@drawable/ic_launcher"     android:label="@string/app_name"     android:theme="@style/apptheme" >     <activity         android:name=".splashactivity"         android:label="@string/app_name" >         <intent-filter>             <action android:name="android.intent.action.main" />              <category android:name="android.intent.category.launcher" />         </intent-filter>     </activity>     <activity         android:name=".regoneactivity"         android:label="@string/title_activity_reg_one" >     </activity>     <activity         android:name=".passwordactivity"         android:label="@string/title_activity_password" >     </activity>     <activity         android:name=".passactivity"         android:label="@string/title_activity_pass" >     </activity>     <activity         android:name=".mapactivity"         android:label="@string/title_activity_map" >     </activity>     <activity         android:name=".selectcircleactivity"         android:label="@string/title_activity_select_circle" >     </activity>     <activity         android:name=".sharelocationactivity"         android:label="@string/title_activity_share_location" >     </activity>     <activity         android:name=".favouritesactivity"         android:label="@string/title_activity_favourites" >     </activity>     <activity         android:name=".settingsactivity"         android:label="@string/title_activity_settings" >     </activity>       <meta-data         android:name="com.google.android.maps.v2.api_key"         android:value="aizasyazx8ehxiq5zrgsdstuyseukq_pah8rlps" />      <meta-data           android:name="com.google.android.gms.version"          android:value="@integer/google_play_services_version"/>    </application>  </manifest> 

i forgot override onprogressupdate in async task :p , now, works perfectly..


Comments