AutoValue的简单扩展 auto-droid

码农软件 · 软件分类 · 手机开发工具 · 2019-04-30 13:44:09

软件介绍

针对Android开发,对Google发布的开源库AutoValue做了一个简单扩展,可以自动构建以下功能:

  • createFromSharedPreferences(SharedPreferences sharedPreferences)

  • createFromCursor(Cursor cursor)

  • Parcelable implementations if the class implements Parcelable

下载

在你的build.gradle文件中添加以下代码:

buildscript {
    dependencies {
        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
    }
}

repositories {
    maven { url "https://jitpack.io" }
}

apply plugin: 'com.neenbedankt.android-apt'

dependencies {
    compile 'com.github.xizzhu.auto-droid:auto-droid-annotations:0.1'
    apt 'com.github.xizzhu.auto-droid:auto-droid-processors:0.1'
}

使用

从shared preference构建对象:

// annotate your AutoValue objects as usual
@AutoValue
public abstract class MyPreference {
    // indicate that the factory will retrieve the value from shared preferences
    @SharedPreference(key = "keyOfMyInt", defaultValue = "8964")
    abstract int myIntFromPreference();

    // adds the factory method
    public static MyPreference create(SharedPreferences sharedPreferences) {
        return AutoValue_MyPreference.createFromSharedPreferences(sharedPreferences);
    }
}

从cursor构建对象:

// annotate your AutoValue objects as usual
@AutoValue
public abstract class MyCursor {
    // indicate that the factory will retrieve the value from cursor
    @ColumnName("keyOfMyInt")
    abstract int myIntFromPreference();

    // adds the factory method
    public static MyPreference create(Cursor cursor) {
        return AutoValue_MyPreference.createFromCursor(cursor);
    }
}

本文地址:https://www.codercto.com/soft/d/4715.html

信息乌托邦

信息乌托邦

桑斯坦 / 毕竞悦 / 法律出版社 / 2008-10-1 / 28.50元

我们被无限的媒体网从四面包围,如何能够确保最准确的信息脱颖而出、并且引起注意?在本书中,凯斯•R. 桑斯坦对于积蓄信息和运用知识改善我们生活的人类潜能,展示了深刻的乐观理解。 在一个信息超负荷的时代里,很容易退回到我们自己的偏见。人群很快就会变为暴徒。伊拉克战争的合法理由、安然破产、哥伦比亚号航天载人飞机的爆炸——所有这些都源自埋于“信息茧房”的领导和组织做出的决定,以他们的先入之见躲避意见......一起来看看 《信息乌托邦》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

在线进制转换器
在线进制转换器

各进制数互转换器