公共静态运行时增量更改 - android [英] public static runtime incremental change - android

查看:40
本文介绍了公共静态运行时增量更改 - android的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个名为 A 的简单类,它有两个私有字段.

I have a simple class named A which has two private fields.

public class A {

    private String a;
    private String b;
} // A

当我从类实例中获取所有声明的字段时,我会得到一个额外的字段,名为$change,类型为com.android.tools.fd.runtime.增量变化.它来自哪里?我完全没有得到这个.

When I get all declared fields from class instance, I get one extra field named $change of type com.android.tools.fd.runtime.IncrementalChange. Where is it coming from ? I am totally not getting this.

Field[] fields = cls.getDeclaredFields();
        for (int i = 0, len = fields.length; i < len; i++) {
            Field field = fields[i];
            field.setAccessible(true);
            Log.d("TAG", field.getName());
            if (field.isAnnotationPresent(Primary.class)) {
                query += getFromalName(field.getName()).toUpperCase() + " " + getSchemaType(field.getType().getSimpleName()) + " PRIMARY KEY, ";
                continue;
            }
            if (field.isAnnotationPresent(NotNull.class)) {
                query += getFromalName(field.getName()) + " " + getSchemaType(field.getType().getSimpleName()) + " NOT NULL, ";
                continue;
            }
            query += getFromalName(field.getName()) + " " + getSchemaType(field.getType().getSimpleName()) + ", ";
        } // end for

        query = query.substring(0, query.lastIndexOf(","));
        query += " )";

推荐答案

添加它是为了支持 即时运行.禁用即时运行解决了问题.这里

It was added to support instant run. Disabling instant run solved the problem. here

是android问题跟踪器的链接

is the link to android issue tracker

这篇关于公共静态运行时增量更改 - android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆