Git Product home page Git Product logo

android-properties's Introduction

Android @PropertiesBuild StatusAndroid Arsenal

Imgur

This lib provides a simple way to read a <file>.properties from assets folder.

You just have to extends from AssetsProperties and use @Property annotation to invoke the automatic property mapping.

Installation

It's very simple with gradle ;)

Add mavenCentral as repository source:

repositories {
  mavenCentral()
}

And finnaly add this line inside dependencies { } section:

compile 'com.github.fernandodev.androidproperties:androidproperties:+'

The + symbol indicates to gradle to get the latest version.

  • See the sample if there are any doubts.

Using

Super simple usage ;)

Android Properties can parse String,int,float,double and boolean values from file .properties.

Create a class that represents your file properties and extend from AssetsProperties class.

Example:

assets/config.properties

int_value=23
flag=true
tax=2.3f

Config.java

public class Config extends AssetsProperties {

  @Property("int_value") int intValue;
  @Property boolean flag;
  @Property float tax;

  public Config(Context context) { super(context); }
}

You must use @Property annotation to map field as property field from file. Pass the name of property if it's different from the field name in class.

Tips

Read another file properties

The default file for properties is called config.properties but if you need to read another file properties, just pass the name of file in the constructor:

super(context, "another_properties_file");

Map property name

The @Property annotation uses the name of field as name of property field in file. So if the field name is diferent of the name in file, just pass the name of property by @Property("property_name").

Useful public methods

If you do not want to use @Property annotation or need only a reader property class you can use some public methods from AssetsProperties:

public int getInt(String key, int defaultValue);

public float getFloat(String key, float defaultValue);

public double getDouble(String key, double defaultValue);

public boolean getBoolean(String key, boolean defaultValue);

public String getString(String key, String defaultValue);

If the AssetsProperties can't read the key then the defaultValue will be returned.

Testing

There are a simple test for the rating dialog. If you want to contribute check the tests too.

$ git clone [email protected]:fernandodev/android-properties.git
$ cd android-properties
$ ./gradlew connectedAndroidTest --daemon

You must open an emulator before.

License

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

android-properties's People

Contributors

fernandodev avatar

Watchers

Sangkyun Yoon avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.