新的 Android 应用程序“开发人员”在这里,正在开发我的第一个应用程序。
正如标题所示,我正在尝试找到处理 SQLite 数据库更新并根据新行执行操作的最佳方法。
可以通过以下两种方式之一添加新行:
1)在拍摄照片时自动添加新条目的内容观察者
2)通过共享意图
只有我的应用程序可以向数据库添加条目。
现在我有一个异步任务,它每 1000 毫秒在后台循环一次,检查是否将新图像添加到数据库中,检查几个变量,如果一切顺利,它会执行 HttpPost 任务。
这按预期工作。
我来自网络开发历史,线程经验非常少。我已经阅读了有关线程、信号量和处理程序的文章,但我真的很难理解它们,哪些最适合我的需求,或者我目前正在做的事情是否还可以。
是否会Thread.sleep(1000);
阻止设备进入深度睡眠?从而杀死电池。
我真正需要的是一些指导,可能是一些例子,我喜欢将自己视为一个快速学习者,但我缺乏线程经验使我无法真正理解什么最适合我想要完成的工作。
使用以下方法将图像添加到数据库中:
public class DatabaseHelper extends SQLiteOpenHelper {
...
// Adding new Image
public void addImage(Image image) {
Log.d(TAG, "adding image: "+image._uri);
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_URI, image._uri); // image uri
values.put(KEY_TRIES, image._tries); // upload tries
values.put(KEY_UPLOADED, image._uploaded); // upload status
values.put(KEY_DATE_ADDED, Calendar.getInstance().getTimeInMillis());
values.put(KEY_DATE_UPLOADED, image._date_uploaded);
// Inserting Row
db.insert(TABLE_IMAGES, null, values);
Log.d(TAG, "image added");
}
}