在将apk发包出去后需要改动Entity的元素,就需要升级数据库。
这时看具体需求,一是不需要原有数据,清除数据库;二是需要保留原有数据。
greendao默认使用的是第一种:
Daomaster:

   public static class DevOpenHelper extends OpenHelper {
        public DevOpenHelper(Context context, String name) {
            super(context, name);
        }

        public DevOpenHelper(Context context, String name, CursorFactory factory) {
            super(context, name, factory);
        }

        @Override
        public void onUpgrade(Database db, int oldVersion, int newVersion) {
            Log.i("greenDAO", "Upgrading schema from version " + oldVersion + " to " + newVersion + " by dropping all tables");
            dropAllTables(db, true);
            onCreate(db);
        }
    }

这里只说第二种情况。
那么需要升级需要如下操作:

在 CameraTime 中增加 test属性

@Entity
public class CameraTime {
    @Id
    private Long id;
    private String time;
    private String standUuid;
    
    public String test;
}

在 onUpgrade 方法中,当旧版本号为1时,增加一个 test 的字段在 CameraTime 表中。
不知道数据库表的命名规则的话,可以将数据库导出本地打开看即可。

在 MyDaoMashter 和 build.gradle 中改变版本号

greendao {
    schemaVersion 2
    daoPackage 'com.build.scan.greendao.gen'
    targetGenDir 'src/main/java'
}

apk安装在版本号为1的的时候即可生效。