【发布时间】:2012-09-19 19:24:39
【问题描述】:
这是我从数据库中读取数据的代码。在这里,我只是接收值并使用“Toast”类打印它们。
public void OnClickLogin(View btnLogin)
{
String email,password;
String[] cols = new String[] {DataBase_Server.EMAIL, DataBase_Server.PASS};
EditText edtPassword = (EditText) findViewById(R.id.edtPassword);
EditText edtLoginId = (EditText) findViewById(R.id.btnLogin);
DataBase_Server database=new DataBase_Server(login.this);
SQLiteDatabase db=database.getReadableDatabase();
Cursor c=db.query(DataBase_Server.TABLE, null, null, null, null, null, null);
//startManagingCursor(c);
c.moveToFirst();
email=c.getString(c.getColumnIndex(DataBase_Server.EMAIL));
password=c.getString(c.getColumnIndex(DataBase_Server.PASS));
Toast.makeText(this,email+" hello "+password, Toast.LENGTH_SHORT).show();
}
代码中没有语法错误,但是当我运行我的应用程序并单击我的登录按钮时,我得到一个强制关闭对话框,该对话框最终退出了我的应用程序,并且在“logcat”中我看到了一些异常,例如“无法打开堆栈文件......访问被拒绝”等等等等。
日志猫:
09-20 00:44:06.755:E/AndroidRuntime(244):未捕获的处理程序:线程主因未捕获的异常而退出 09-20 00:44:06.775: E/AndroidRuntime(244): java.lang.IllegalStateException: 在活动中找不到方法 onClickLogin(View) 09-20 00:44:06.805:E/dalvikvm(244):无法打开堆栈跟踪文件“/data/anr/traces.txt”:权限被拒绝
日志猫
还有一些错误: 日志猫:
09-20 00:44:06.755:E/AndroidRuntime(244):未捕获的处理程序:线程主因未捕获的异常而退出 09-20 00:44:06.775: E/AndroidRuntime(244): java.lang.IllegalStateException: 在活动中找不到方法 onClickLogin(View) 09-20 00:44:06.805:E/dalvikvm(244):无法打开堆栈跟踪文件“/data/anr/traces.txt”:权限被拒绝 09-20 01:22:04.535:E/AndroidRuntime(352):未捕获的处理程序:线程主因未捕获的异常而退出 09-20 01:22:04.555: E/AndroidRuntime(352): java.lang.IllegalStateException: 无法执行活动的方法 09-20 01:22:04.555: E/AndroidRuntime(352): 在 android.view.View$1.onClick(View.java:2031) 09-20 01:22:04.585:E/dalvikvm(352):无法打开堆栈跟踪文件“/data/anr/traces.txt”:权限被拒绝
【问题讨论】:
-
如果您从 logcat 附加错误会有所帮助
-
"Database_Server" 是我创建表的数据库类的名称
-
在函数名称上固定大小写后,请确保在退出函数之前关闭游标和数据库。
c.close(); db.close();
标签: android database sqlite android-intent