アンドロイドモバイルアプリのログインを作成していますが、わからない理由があるため、ログインボタンをクリックするとアプリがクラッシュします。見えないコードに間違いがありますか?私はラインの後にコードラインを見てきましたが、私は異常なものを見つけることができません。 ボタンをクリックすると、エミュレータで実行されているアプリが終了します
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class Login extends AppCompatActivity implements View.OnClickListener {
Button _login_button;
EditText _AbovePNDUsername, _AbovePNDPassword;
SQLiteDatabase db;
SQLiteOpenHelper openHelper;
Cursor cursor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
openHelper = new RegisterUserinDatabase(this);
db = openHelper.getReadableDatabase();
_login_button = (Button) findViewById(R.id.login_button);
_AbovePNDUsername = (EditText) findViewById(R.id.AbovePNDUsername);
_AbovePNDPassword = (EditText) findViewById(R.id.AbovePNDPassword);
_login_button.setOnClickListener(this);
}
@Override
public void onClick(View v) {
if (v.getId() == R.id.login_button) {
String username = _AbovePNDUsername.getText().toString();
String password = _AbovePNDPassword.getText().toString();
cursor = db.rawQuery("SELECT * FROM " + RegisterUserinDatabase.TABLE_NAME + "WHERE"
+ RegisterUserinDatabase.COLUMN_USERNAME + "=? AND" + RegisterUserinDatabase.COLUMN_PASSWORD
+ "=?", new String [] {username, password});
if(cursor != null)
{
if(cursor.getCount()> 0){
cursor.moveToNext();
Toast.makeText(getApplicationContext(), "login successfully", Toast.LENGTH_LONG).show();
startActivity(new Intent(this, add_treatment.class));
}
else {
Toast.makeText(getApplicationContext(), "error in login", Toast.LENGTH_LONG).show();
}
}
}
}
}
クラッシュログを追加してください。 – Bob