admin 管理员组文章数量: 887031
Android,程序反编译后的打包发布
android对于打包中遇到的反射的问题
(大虾请飘过........ )1:本人生活比较懒,今天将懒也发挥到了程序上
哎,开发android一会了,今天发现好多代码都是一样的,比如举例为:刚开始一个数据库,增加一个table1,就要为该表写最简单的增删改查的操作,增加一个table2的时候又要写这些东西,哎这种代码,看的哥蛋疼,于是决定赖一下下;呵呵2:对java的反射机制和注释有一定的基础
该文章设计到的基本类,DBUtils,以及table1,table2,数据库对象表模型的基类DBTable; 首先DBUtils如下:public class DBUtils {private static DBUtils instance;static final String FAILED = "{\"result\":\"-1\"}";static final String SUCESS = "{\"result\":\"0\"}";private static QDWDBSuper mQDWDB;private static SQLiteDatabase database;public static void initDatabase(SQLiteDatabase db) {DBUtils.database = db;}/*** 创建数据库* * @param userID* @return*/public boolean createDB(int userID) {return mQDWDB.createDB(userID);}/*** 判断数据库是否存在* * @param userID* @return*/public boolean dbExists(int userID) {return mQDWDB.dbExists(userID);}/*** 刪除数据库* * @param type* @param userID* @return*/public boolean deleteDB(int userID) {boolean result = mQDWDB.deleteDB(userID);mQDWDB = null;return result;}/*** 调用dbuser之前确保用户已经登陆,否则该单例返回错误*/public static DBUtils getInstance(QDWDBSuper dbSuper) {if (mQDWDB == null || mQDWDB != dbSuper) {synchronized (DBUtils.class) {if (mQDWDB != dbSuper) {mQDWDB = dbSuper;instance = new DBUtils();}}}return instance;}public DBUtils() {database = mQDWDB.getDBWriteBase();}private boolean isNull() {return database == null ? false : true;}/*** 建表,必须带主键* * @param clazz* @return*/public String create(Class<? extends DBTable> clazz) {if (!isNull()) {return FAILED;}Table table = clazz.getAnnotation(Table.class);if (table == null) {return FAILED;}ContentValues values = new ContentValues();String key = "";Field[] fields = clazz.getDeclaredFields();for (Field field : fiel
本文标签: Android 程序反编译后的打包发布
版权声明:本文标题:Android,程序反编译后的打包发布 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/jishu/1723624319h742188.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论