1. 捕抓个别 vivo 设备初始化下载证书时拿不到文件的闪退 2. 捕抓 ViewPager 和 ScrollView 在部分设备上多指操作的闪退 3. 捕抓接收商店应用跳转时链接格式不支持造成的闪退 4. 修复光环应用内更新弹窗关闭弹窗后偶发的闪退 5. 修复游戏评分列表数据更新时偶发的闪退 6. 修复下载管理已安装列表更新排序时偶发的闪退 7. 捕抓搜索历史数据库/日志上报数据库因为磁盘空间不足引起的闪退 8. 捕抓内存回收对象时因为系统缺陷导致的超时闪退
121 lines
2.7 KiB
Java
121 lines
2.7 KiB
Java
package com.gh.gamecenter.db;
|
|
|
|
import android.content.Context;
|
|
|
|
import com.gh.gamecenter.db.info.DataCollectionInfo;
|
|
import com.j256.ormlite.dao.Dao;
|
|
|
|
import java.sql.SQLException;
|
|
import java.util.List;
|
|
|
|
// TODO 这个数据库其实没有用了,上传到 loghub 已经有相关的逻辑处理,有空删掉它
|
|
public class DataCollectionDao {
|
|
|
|
private DatabaseHelper helper;
|
|
private Dao<DataCollectionInfo, String> dao;
|
|
|
|
public DataCollectionDao(Context context) {
|
|
try {
|
|
helper = DatabaseHelper.getHelper(context);
|
|
dao = helper.getDao(DataCollectionInfo.class);
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 查找一个数据
|
|
*/
|
|
public List<DataCollectionInfo> findByType(String type) {
|
|
try {
|
|
return dao.queryForEq("type", type);
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* 添加一个数据
|
|
*/
|
|
public void add(DataCollectionInfo entity) {
|
|
try {
|
|
dao.create(entity);
|
|
} catch (Exception e) {
|
|
// java.lang.IllegalStateException: attempt to re-open an already-closed object: SQLiteDatabase:
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 删除一个数据
|
|
*/
|
|
public void delete(String id) {
|
|
try {
|
|
dao.deleteById(id);
|
|
} catch (Exception e) {
|
|
// java.lang.IllegalStateException: attempt to re-open an already-closed object: SQLiteDatabase:
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 删除一组数据
|
|
*/
|
|
public void delete(List<String> ids) {
|
|
try {
|
|
dao.deleteIds(ids);
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 根据id获取某一个数据
|
|
*/
|
|
public DataCollectionInfo find(String id) {
|
|
try {
|
|
return dao.queryForId(id);
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* 获取所有的数据
|
|
*/
|
|
public List<DataCollectionInfo> getAll() {
|
|
try {
|
|
return dao.queryForAll();
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* 获取点击数据
|
|
*/
|
|
public List<DataCollectionInfo> getClickData() {
|
|
try {
|
|
return dao.queryForEq("type", "click-item");
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/**
|
|
* 更新数据
|
|
*/
|
|
public void update(DataCollectionInfo entity) {
|
|
try {
|
|
dao.update(entity);
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
|
|
}
|