我认为你把任务的细节保存在一个变量中是犯了一个错误(
taskactivity.subjentry和taskactivity.timeentryy
)这意味着每次尝试添加新任务时都会替换数据。
因此,您应该将数据保存在数据库、数组或任何其他数据结构中,并在创建通知时检索数据。
将数据保存到sqlite db
public void addData(Data data){
SQLiteDatabase database = getWritableDatabase();
ContentValues cv_data = new ContentValues();
cv_data.put("key", data.key());
cv_data.put("subjEntry", data.subjEntry());
cv_data.put("subjTime", data.subjTime());
database.insert("tablename",null,cv_data);
database.close();
}
下面是从sqlite数据库检索数据的代码
public List<Data> getData(String key){
String columns [] = {
"key", "subjEntry", "subjTime"
};
String sortingOrder = " subjTime ASC";
List <Data> dataList = new ArrayList <Data>();
SQLiteDatabase mdDatabase = getWritableDatabase();
Cursor cursor = mdDatabase.query("tablename",
columns,
null,
null,
null,
null,
sortingOrder);
if (cursor.moveToFirst()){
do {
if(cursor.getString(cursor.getColumnIndex("subjEntry")).equals(Key)){
}
Data data = new Data();
data.setsubjEntry(cursor.getString(cursor.getColumnIndex("subjEntry")));
data.setsubjTime(cursor.getString(cursor.getColumnIndex("subjTime")));
dataList.add(data);
}while (cursor.moveToNext());
}
mdDatabase.close();
cursor.close();
return dataList;
}'
或者尝试
Firebase JobDispatcher