package com.example.minorproject;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.database.sqlite.SQLiteDatabase;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
public class SignUp extends Activity
{
Intent i=null;
boolean flag=false;
SQLiteDatabase db=null;
EditText tv1,tv2,tv3,tv4,tv5,tv6;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_sign_up);
EditText tv1=(EditText)findViewById(R.id.name);
EditText tv2=(EditText)findViewById(R.id.email);
EditText tv3=(EditText)findViewById(R.id.mobile_no);
EditText tv4=(EditText)findViewById(R.id.address);
EditText tv5=(EditText)findViewById(R.id.blood_group);
EditText tv6=(EditText)findViewById(R.id.password);
db=openOrCreateDatabase("DATABASE",MODE_PRIVATE,null);
db.execSQL("Create table if not exists BloodDonor(name varchar,email varchar,mobile_no int,address varchar,blood_group varchar,password varchar)");
}
public void action(View v)
{
switch(v.getId()){
case R.id.login:
Intent i=new Intent(this,Login.class);
startActivityForResult(i, 500);
break;
case R.id.sign_up:
String name=tv1.getText().toString();
String email=tv2.getText().toString();
String mobile=tv3.getText().toString();
String address=tv4.getText().toString();
String bloodgroup=tv5.getText().toString();
String password=tv6.getText().toString();
if(name==null||name==""||name.length()<3)
{
show("Please Enter Correct Name.");
}
else if(email==null||email==""||email.length()<10)
{
show("Please Enter Correct Email id.");
}
else if(mobile==null||mobile==""||mobile.length()<10)
{
show("Please Enter Correct mobile number.");
}
else if(address==null||address==""||address.length()<5)
{
show("Please Enter Correct address.");
}
else if(bloodgroup==null||bloodgroup==""||bloodgroup=="A+ve"||bloodgroup=="A+VE"||bloodgroup=="B+VE"
||bloodgroup=="B+ve"||bloodgroup=="AB+ve"||bloodgroup=="AB+VE"||bloodgroup=="O+ve"
||bloodgroup=="O+VE"||bloodgroup=="A-ve"||bloodgroup=="A-VE"||bloodgroup=="B-VE"
||bloodgroup=="B-ve"||bloodgroup=="AB-ve"||bloodgroup=="AB-VE"||bloodgroup=="O-ve"
||bloodgroup=="O-VE")
{
show("Please Enter Correct blood group.");
}
else if(password==null||password==""||password.length()<6)
{
show("Please Enter Strong Password.");
}
else
{
db.execSQL("insert into login values('"+name+"','"+email+"','"+mobile+"','"+address+"','"+bloodgroup+"','"+password+"''nothing')");
i=new Intent(this,Home.class);
startActivityForResult(i, 500);
db.close();
finish();
}
break;
}
}
public void show(String str){
Toast.makeText(this,str,Toast.LENGTH_LONG).show();
}
}
,这里是我的logcat当运行此代码显示java.lang.NullPointerException发生并强行关闭应用程序
七月七日至3日:05:55.780:d/dalvikvm(795):GC_FOR_ALLOC释放69K,7%的游离2631K/2820K,暂停129ms,总169ms
7月7日至三日:05:55.819:I/dalvikvm堆(795):生长堆(FRAG情况下),以用于4.147MB 1536016字节的分配
07-03 07:05:56.039:D/dalvikvm(795):GC _FOR_ALLOC释放2K,5%免费4128K/4324K,暂停194ms,共194ms
07-03 07:05:58.410:D/gralloc_goldfish(795):未检测到GPU仿真的仿真器。
7月7日至3日:06:12.809:d/dalvikvm(795):GC_FOR_ALLOC释放15K,4%的游离4242K/4376K,暂停128ms的,总130MS
7月7日至3日:06:12.859:我/ dalvikvm-heap(795):将堆(碎片情况)增加到5.720MB,用于1536016字节的分配
07-03 07:06:13.109:D/dalvikvm(795):GC_FOR_ALLOC释放1K,3%释放5741K/5880K,暂停245ms,总共245ms
07-03 07:06:16.108:I /编舞师(795):跳过了75帧!应用程序可能在其主线程上做了太多工作。
07-03 07:06:22.759:我/编舞(795):跳过了44帧!应用程序可能在其主线程上做了太多工作。
07-03 07:06:54.290:I /编舞师(795):跳过了32帧!应用程序可能在其主线程上做了太多工作。
7月7日至3日:07:03.780:d/AndroidRuntime(795):关闭VM
7月7日至3日:07:03.789:W/dalvikvm(795):线程ID = 1:螺纹与离开未捕获的异常(组= 0x414c4700)
7月7日至3日:07:03.869:E/AndroidRuntime(795):致命异常:主
7月7日至3日:07:03.869:E/AndroidRuntime(795) :java.lang.IllegalStateException:无法执行活动的方法
07-03 07:07:03.869:E/AndroidRuntime(795) :at android.view.View $ 1.onClick(View.java:3633)
07-03 07:07:03.869:E/AndroidRuntime(795):at android.view.View.performClick(View.java: 4240)
07-03 07:07:03.869:E/AndroidRuntime(795):在android.view.View $ PerformClick.run(View.java:17721)
07-03 07:07: 03.869:E/AndroidRuntime(795):at android.os.Handler.handleCallback(Handler.java:730)
07-03 07:07:03.869:E/AndroidRuntime(795):at android.os.Handler .dispatchMessage(Handler.java:92)
07-03 07:07:03.869:E/AndroidRuntime(795):at android.os.Looper.loop(Looper.java:137)
07-03 07:07:03。869:E/AndroidRuntime(795):在android.app.ActivityThread.main(ActivityThread.java:5103)
07-03 07:07:03.869:E/AndroidRuntime(795):at java.lang.reflect .Method.invokeNative(本机方法)
7月7日至三日:07:03.869:E/AndroidRuntime(795):在java.lang.reflect.Method.invoke(Method.java:525)
07 -03 07:07:03.869:E/AndroidRuntime(795):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:737)
07-03 07:07:03.869:E/AndroidRuntime(795):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:5 53)
7月7日至三日:07:03.869:E/AndroidRuntime(795):在dalvik.system.NativeStart.main(本机方法)
7月7日至三日:07:03.869:E/AndroidRuntime (795):java.lang.reflect.InvocationTargetException
7月7日至3日::07:03.869:E/AndroidRuntime(795):在java.lang.reflect.Method.invokeNative(本机方法)
致07-03 07:07:03.869:E/AndroidRuntime(795):at java.lang.reflect.Method.invoke(Method.java:525)
07 -03 07:07:03.869:E/AndroidRuntime(795):at android.view.View $ 1.onClick(View.java:3628)
07-03 07:07:03.869:E/AndroidRuntime(795) ... 11多个
7月7日至3日:07:03.869:E/AndroidRuntime(795):显示java.lang.NullPointerException
7月7日至3日:07:03.869:致E/AndroidRuntime (795):在com.example.minorproject.SignUp.action(SignUp.java:47)
7月7日至3日:07:03.869:E/AndroidRuntime(795):... 14更
07-03 07/07:10.749:D/dalvikvm(828):GC_FOR_ALLOC释放73K,7%免费2631K/2824K,暂停38毫秒,总计41毫秒
07-03 07:07:10.759:I/dalvikvm-heap(828) :为1536016字节的分配增加堆(碎片情况)到4.147MB
07-03 07:07:10.879:D/dalvikvm(828):GC_FOR_ALLOC释放2K,5%空闲4129K/4328K,暂停113ms,总计113ms
07-03 07:07:11.489:I/Choreographer(828):跳过了30帧!应用程序可能在其主线程上做了太多工作。
七月七日至3日:07:11.519:d/gralloc_goldfish(828):没有GPU仿真模拟器检测
PLZ乌拉圭回合后崩溃日志 – KOTIOS
你能说出你正在尝试做的,包括异常 –
我试图进入sqlite的database.but每当我输入的数据,并尝试点击发送数据的logcat的到数据库然后发生上面的错误,并导致应用程序forceclos e @RichardTingle – user3801344