java - Android signup/signin -


i'm beginner android app development.so decided go simple app(signin/signup).i don't know causes error here full code.when click on signup or signin button causes "unfortunately app stopped running error". plz point out me in right direction.

mainactivity.java

package com.example.kyokesh.ams1;  import android.app.activity; import android.content.intent; import android.database.cursor; import android.database.sqlite.sqlitedatabase; import android.os.bundle; import android.view.view; import android.view.view.onclicklistener; import android.widget.button; import android.widget.edittext; import android.widget.toast;   public class mainactivity extends activity { edittext email,password; button signup, signin; sqlitedatabase db; cursor c;   @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_main);     email = (edittext) findviewbyid(r.id.etemail);     password = (edittext) findviewbyid(r.id.etpassword);     signin = (button) findviewbyid(r.id.bsignin);     signup = (button) findviewbyid(r.id.bsignup);      signup.setonclicklistener(new view.onclicklistener(){         @override         public void onclick(view v) {             intent intent = new intent(mainactivity.this, signup.class);             startactivity(intent);         }     });      signin.setonclicklistener(new view.onclicklistener() {         @override         public void onclick(view arg0) {             string s1 = email.gettext().tostring();             string s2 = password.gettext().tostring();             db = openorcreatedatabase("mydatabase.db", mode_private, null);             c = db.rawquery("select name userdata password ='" + s2 + "' && email='"+s1+"'",null);             if (c.getcount() == 0) {                 toast.maketext(getapplicationcontext(), "login successful", toast.length_short).show();                  c.close();                 db.close();                 intent i1 = new intent(mainactivity.this, signup.class);                 startactivity(i1);             }           }     }); }} 

signup.java

package com.example.kyokesh.ams1;  import android.app.activity; import android.content.intent; import android.database.sqlite.sqlitedatabase; import android.os.bundle;; import android.support.v7.app.appcompatactivity; import android.support.v7.widget.toolbar; import android.view.view; import android.view.view.onclicklistener; import android.widget.button; import android.widget.edittext; import android.widget.toast;  import java.util.objects;  public class signup extends activity { edittext name,email,password,cpassword; button register; sqlitedatabase db;  @override protected void oncreate(bundle savedinstancestate) {     super.oncreate(savedinstancestate);     setcontentview(r.layout.activity_signup);     name = (edittext) findviewbyid(r.id.etname);     email = (edittext) findviewbyid(r.id.etemail);     password = (edittext) findviewbyid(r.id.etpassword);     cpassword = (edittext) findviewbyid(r.id.etcpassword);     final string s1 = name.gettext().tostring();     final string s2 = email.gettext().tostring();     final string s3 = password.gettext().tostring();     final string s4 = cpassword.gettext().tostring();     register.setonclicklistener(new view.onclicklistener() {         @override         public void onclick(view v) {              db = openorcreatedatabase("mydatabse.db", mode_private, null);             if (objects.equals(s1, s2)) {                 db.execsql("create table if not exists userdata(name varchar,email varchar,password varchar,cpassword varchar);");                 db.execsql("insert userdata '" + s1 + "','" + s2 + "','" + s3 + "','" + s4 + "');");                 toast.maketext(getapplicationcontext(), "sign   successful", toast.length_short).show();                 intent main = new intent(signup.this, mainactivity.class);             } else {                 toast.maketext(getapplicationcontext(), "password doesn't    match confirmation", toast.length_short).show();                 intent intent = getintent();                 finish();                 startactivity(intent);             }         }     }); } } 

xml

content_main.xml

<?xml version="1.0" encoding="utf-8"?> <relativelayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingbottom="@dimen/activity_vertical_margin" android:paddingleft="@dimen/activity_horizontal_margin" android:paddingright="@dimen/activity_horizontal_margin" android:paddingtop="@dimen/activity_vertical_margin" app:layout_behavior="@string/appbar_scrolling_view_behavior" tools:context="com.example.kyokesh.ams1.mainactivity" tools:showin="@layout/activity_main">  <relativelayout     tools:context="com.example.kyokesh.ams.mainactivity"     tools:showin="@layout/activity_main"     app:layout_behavior="@string/appbar_scrolling_view_behavior"     xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:app="http://schemas.android.com/apk/res-auto"     xmlns:tools="http://schemas.android.com/tools"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:paddingbottom="@dimen/activity_vertical_margin"     android:paddingleft="@dimen/activity_horizontal_margin"     android:paddingright="@dimen/activity_horizontal_margin"     android:paddingtop="@dimen/activity_vertical_margin"     android:layout_centervertical="true"     android:layout_centerhorizontal="true">      <button         android:layout_width="176dp"         android:layout_height="wrap_content"         android:text="sign in"         android:id="@+id/bsignin"         android:layout_margintop="45dp"         android:backgroundtint="#1e88e5"         android:clickable="false"         android:layout_below="@+id/etpassword"         android:layout_centerhorizontal="true"         android:nestedscrollingenabled="false" />      <edittext         android:layout_width="match_parent"         android:layout_height="wrap_content"         android:inputtype="textemailaddress"         android:ems="10"         android:id="@+id/etemail"         android:text="e-mail"         android:layout_alignparenttop="true"         android:layout_alignparentright="true"         android:layout_alignparentend="true"         android:layout_margintop="49dp" />      <edittext         android:layout_width="match_parent"         android:layout_height="wrap_content"         android:inputtype="textpassword"         android:ems="10"         android:id="@+id/etpassword"         android:text="password"         android:layout_below="@+id/etemail"         android:layout_alignparentright="true"         android:layout_alignparentend="true" />      <button         android:layout_width="176dp"         android:layout_height="wrap_content"         android:text="new? sign here"         android:id="@+id/bsignup"         android:backgroundtint="#1e88e5"         android:clickable="false"         android:onclick="onsignupclick"         android:layout_centervertical="true"         android:layout_centerhorizontal="true" /> </relativelayout> </relativelayout> 

content_signup.xml

<?xml version="1.0" encoding="utf-8"?> <relativelayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingbottom="@dimen/activity_vertical_margin" android:paddingleft="@dimen/activity_horizontal_margin" android:paddingright="@dimen/activity_horizontal_margin" android:paddingtop="@dimen/activity_vertical_margin" app:layout_behavior="@string/appbar_scrolling_view_behavior" tools:context="com.example.kyokesh.ams1.signup" tools:showin="@layout/activity_signup">  <textview     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:textappearance="?android:attr/textappearancelarge"     android:text="name"     android:id="@+id/textview"     android:layout_alignparenttop="true"     android:layout_alignparentleft="true"     android:layout_alignparentstart="true" />  <edittext     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:inputtype="textpersonname"     android:ems="10"     android:id="@+id/etname"     android:layout_alignparentend="true"     android:layout_below="@+id/textview"     android:layout_centerhorizontal="true" />  <textview     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:textappearance="?android:attr/textappearancelarge"     android:text="e-mail"     android:id="@+id/textview2"     android:layout_alignparentstart="true"     android:layout_below="@+id/etname"     android:layout_centerhorizontal="true" />  <edittext     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:inputtype="textemailaddress"     android:ems="10"     android:id="@+id/etemail"     android:layout_alignparentstart="true"     android:layout_below="@+id/textview2"     android:layout_centerhorizontal="true" />  <textview     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:textappearance="?android:attr/textappearancelarge"     android:text="password"     android:id="@+id/textview3"     android:layout_alignparentstart="true"     android:layout_below="@+id/etemail"     android:layout_centerhorizontal="true" />  <edittext     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:inputtype="textpassword"     android:ems="10"     android:id="@+id/etpassword"     android:layout_alignparentstart="true"     android:layout_below="@+id/textview3"     android:layout_centerhorizontal="true" />  <textview     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:textappearance="?android:attr/textappearancelarge"     android:text="confirm password"     android:id="@+id/textview4"     android:layout_alignparentstart="true"     android:layout_below="@+id/etpassword"     android:layout_centerhorizontal="true" />  <edittext     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:inputtype="textpassword"     android:ems="10"     android:id="@+id/etcpassword"     android:layout_alignparentstart="true"     android:layout_below="@+id/textview4"     android:layout_centerhorizontal="true" />  <button     android:layout_width="176dp"     android:layout_height="wrap_content"     android:text="register"     android:id="@+id/button"     android:backgroundtint="#1e88e5"     android:clickable="false"     android:onclick="onsignupclick"     android:layout_below="@+id/etcpassword"     android:layout_centerhorizontal="true" /> </relativelayout> 

logcat error log:

08-24 09:05:44.393 6017-6017/? i/art: not late-enabling -xcheck:jni (already  on) 08-24 09:05:44.462 6017-6017/? i/art: late-enabling jit 08-24 09:05:44.501 6017-6017/? i/art: jit created  code_cache_capacity=2mb compile_threshold=1000 08-24 09:05:44.720 6017-6017/com.example.kyokesh.ams1 w/system: classloader referenced unknown path: /data/app/com.example.kyokesh.ams1-1/lib/x86 08-24 09:05:44.987 6017-6028/com.example.kyokesh.ams1 w/art: suspending threads took: 14.435ms 08-24 09:05:44.994 6017-6028/com.example.kyokesh.ams1 i/art: background sticky concurrent mark sweep gc freed 11075(515kb) allocspace objects, 0(0b) los  objects, 72% free, 682kb/2mb, paused 16.779ms total 142.291ms 08-24 09:05:45.037 6017-6039/com.example.kyokesh.ams1 d/openglrenderer: use  egl_swap_behavior_preserved: true 08-24 09:05:45.093 6017-6039/com.example.kyokesh.ams1 i/openglrenderer:   initialized egl, version 1.4 08-24 09:05:45.159 6017-6039/com.example.kyokesh.ams1 w/egl_emulation: eglsurfaceattrib not implemented 08-24 09:05:45.159 6017-6039/com.example.kyokesh.ams1 w/openglrenderer: failed set egl_swap_behavior on surface 0xad924be0, error=egl_success 08-24 09:05:46.282 6017-6017/com.example.kyokesh.ams1 d/androidruntime: shutting down vm 08-24 09:05:46.282 6017-6017/com.example.kyokesh.ams1 e/androidruntime:   fatal exception: main                                                                     process:          com.example.kyokesh.ams1, pid: 6017                                                                       java.lang.runtimeexception: unable start activity   componentinfo{com.example.kyokesh.ams1/com.example.kyokesh.ams1.signup}: java.lang.nullpointerexception: attempt invoke virtual method 'void    android.widget.button.setonclicklistener(android.view.view$onclicklistener)' on null object reference                                                                         @   android.app.activitythread.performlaunchactivity(activitythread.java:2416)                                                                         @   android.app.activitythread.handlelaunchactivity(activitythread.java:2476)                                                                         @  android.app.activitythread.-wrap11(activitythread.java)                                                                           @ android.app.activitythread$h.handlemessage(activitythread.java:1344)                                                                         @   android.os.handler.dispatchmessage(handler.java:102)                                                                          @   android.os.looper.loop(looper.java:148)                                                                         @   android.app.activitythread.main(activitythread.java:5417)                                                                         @    java.lang.reflect.method.invoke(native method)                                                                           @    com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:726)                                                                         @   com.android.internal.os.zygoteinit.main(zygoteinit.java:616)                                                                      caused   by: java.lang.nullpointerexception: attempt invoke virtual method 'void android.widget.button.setonclicklistener(android.view.view$onclicklistener)' on   null object reference                                                                          @  com.example.kyokesh.ams1.signup.oncreate(signup.java:34)                                                                         @  android.app.activity.performcreate(activity.java:6237)                                                                          @  android.app.instrumentation.callactivityoncreate(instrumentation.java:1107)                                                                         @  android.app.activitythread.performlaunchactivity(activitythread.java:2369)                                                                         @  android.app.activitythread.handlelaunchactivity(activitythread.java:2476)                                                                          @  android.app.activitythread.-wrap11(activitythread.java)                                                                          @  android.app.activitythread$h.handlemessage(activitythread.java:1344)                                                                          @  android.os.handler.dispatchmessage(handler.java:102)                                                                          @  android.os.looper.loop(looper.java:148)                                                                          @  android.app.activitythread.main(activitythread.java:5417)                                                                          @  java.lang.reflect.method.invoke(native method)                                                                          @  com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:726)                                                                          @  com.android.internal.os.zygoteinit.main(zygoteinit.java:616)  08-24 09:05:48.300 6017-6017/com.example.kyokesh.ams1 i/process: sending signal. pid: 6017 sig: 9 

at least signup activity, should getting null pointer exception since, have not initialised register button , still calling setonclicklistener on object. can fix adding line before calling setonclicklistener:

register = (button) findviewbyid(r.id.button); 

Comments

Popular posts from this blog

mysql - Dreamhost PyCharm Django Python 3 Launching a Site -

java - Sending SMS with SMSLib and Web Services -

java - How to resolve The method toString() in the type Object is not applicable for the arguments (InputStream) -