package com.android.settings.breathlamp;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import com.android.settings.breathlamp.ZF_BreathLampDBHelper;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
/**
* 数据库的操作类
* 封装了对数据表的增删改查操作
*
*/
public class ZF_BreathLampDao {
private SQLiteOpenHelper mOpenHelper;
public ZF_BreathLampDao(Context context) {
mOpenHelper = ZF_BreathLampDBHelper.getInstance(context);
}
//添加app breathlamp info
public void add(String packagename,String breathflag){
SQLiteDatabase db = mOpenHelper.getWritableDatabase();
if(db.isOpen()){
ContentValues values = new ContentValues();
values.put("packagename", packagename);
values.put("breathflag", breathflag);
db.insert("appinfo", "_id", values);
db.close();
}
}
//判断app packagename has added
public boolean hasNameAdded(String packagename){
boolean isExist = false;
SQLiteDatabase db = mOpenHelper.getReadableDatabase();
if(db.isOpen()){
Cursor c = db.query("appinfo", new String[]{"packagename"}, null, null, null, null, null);
while(c.moveToNext()){
String name = c.getString(0);
if(packagename.contains(name)){
return true;
}
}
c.close();
db.close();
}
return isExist;
}
//根据packagename查询id
public int queryId(String packagename){
int _id = 0;
SQLiteDatabase db = mOpenHelper.getReadableDatabase();
if(db.isOpen()){
Cursor c = db.query("appinfo", new String[]{"_id"}, " packagename = ? ", new String[]{packagename}, null, null, null);
if(c.moveToFirst()){
_id = c.getInt(0);
}
c.close();
db.close();
}
return _id;
}
//删除黑名单
/*public void delete(String number){
SQLiteDatabase db = mOpenHelper.getWritableDatabase();
if(db.isOpen()){
db.delete("blacknumber", " number = ? ", new String[]{number});
db.close();
}
}*/
//根据packagename更新breathflag
public void update(int id,String packagename,String breathflag){
SQLiteDatabase db = mOpenHelper.getWritableDatabase();
if(db.isOpen()){
ContentValues values = new ContentValues();
values.put("packagename", packagename);
values.put("breathflag", breathflag);
db.update("appinfo", values, " _id = ? ", new String[]{id+""});
db.close();
}
}
//得到所有的packagename
public List<String> findAll(){
List<String> packagenames = new ArrayList<String>();
SQLiteDatabase db = mOpenHelper.getReadableDatabase();
if(db.isOpen()){
Cursor c = db.query("appinfo", new String[]{"packagename"}, null, null, null, null, null);
while(c.moveToNext()){
String name = c.getString(0);
packagenames.add(name);
}
c.close();
db.close();
}
Collections.sort(packagenames);
return packagenames;
}
}