Closed VeraMayLin closed 3 years ago
发一下项目文件?我帮你运行一下
[Uploading TimeSliceTest 2.zip…]()
Uploading TimeSliceTest 2.zip…
没上传成功,用北航网盘吧。
https://bhpan.buaa.edu.cn:443/link/798BF34C3BBA5FC0C2653026A370375E 有效期限:2021-09-27 23:59
AS 底部的 “Run” 部分可以查看调试信息,如果 APP 崩溃了 (闪退),能看到是什么异常。
闪退是因为 Schedule.java
里的 SQL 语句执行错误,有两个错误:
isImportant
和 isUrgent
没有初始化
// 修改前
public static String isImportant;
public static String isUrgent;
// 修改后 public static String isImportant = "isImportant"; public static String isUrgent = "isUrgent";
2. SQL 语句末尾多加了一个逗号
```java
// 修改前
@Override
public void onCreate(SQLiteDatabase db) {
String sql = "CREATE TABLE "
+ Schedule.tableName
+ " ( "
+ "_id integer primary key autoincrement, "
+ Schedule.ScheduleText_1 + " TEXT, "
+ Schedule.isImportant + " integer, "
+ Schedule.isUrgent + " integer, "
+ Schedule.beginTime + " DATETIME, "
+ Schedule.ddl + " DATETIME, " // 这里多加了一个逗号
+ ");";
db.execSQL(sql);
}
// 修改后
@Override
public void onCreate(SQLiteDatabase db) {
String sql = "CREATE TABLE "
+ Schedule.tableName
+ " ( "
+ "_id integer primary key autoincrement, "
+ Schedule.ScheduleText_1 + " TEXT, "
+ Schedule.isImportant + " integer, "
+ Schedule.isUrgent + " integer, "
+ Schedule.beginTime + " DATETIME, "
+ Schedule.ddl + " DATETIME "
+ ");";
db.execSQL(sql);
}
修改之后闪退问题仍然存在
执行什么操作后闪退的?我这里可以正常打开。
根据你发的图片,是常见的空指针异常,调用 setText
的变量是空的。
尝试打开模拟器运行就会直接闪退
尝试运行app但是打开就闪退,代码也没有报错,应该怎么处理