我正在尝试通过在虚拟设备上单击我的Android应用程序,将一行id
和timestamp
插入到sqlite数据库中。
private final String create_table = "CREATE TABLE clicks ( id INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, timestamp INTEGER(4) NOT NULL);";
db.execSQL("insert into clicks(timestamp) values (strftime(\"%s\", CURRENT_TIME));");
当我运行应用程序时,在数据库中插入三行而不是一行?
有什么建议吗?
这里是MainActivity:
公共类MainActivity扩展了AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SQLite sqlite = new SQLite( this );
sqlite.open();
sqlite.insert();
sqlite.close();
System.exit(0);
}
}
当我关闭它时,应用程序重启两次。 “System.exit(0)”
02-21 18:10:11.558 2232-2232/? I/art: System.exit called, status: 0
02-21 18:10:11.558 2232-2232/? I/AndroidRuntime: VM exiting with result code 0, cleanup skipped.
02-21 18:10:11.575 1203-1216/? I/ActivityManager: Process com.click.nautilus.click (pid 2232) has died
02-21 18:10:11.581 2246-2246/? I/art: Not late-enabling -Xcheck:jni (already on)
02-21 18:10:11.595 1203-1216/? I/ActivityManager: Start proc 2246:com.click.nautilus.click/u0a54 for activity com.click.nautilus.click/.MainActivity
答案 0 :(得分:1)
我解决了这个问题。
不建议System.exit(0)
完成应用。
再次感谢你。
最后,MainActivity
看起来像这样:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SQLite sqlite = new SQLite(this);
sqlite.open();
sqlite.insert();
sqlite.close();
setResult(0);
finish();
}
关于关闭应用的更多信息: