A new Client-Side FeatureFlags library.
This is just a stub at the moment. Follow-on cls contain more
implementation.
This cl describes the basic shape for usage:
BooleanFlag FOOBAR = FeatureFlags.booleanFlag("foo", "bar", false);
FeatureFlags.getInstance().isEnabled(FOOBAR);
Defined are 4 flags types:
- BooleanFlag: can be either true or false. Held constant until
device restart.
- DynamicBooleanFlag: can be either true or false. Can change while
a process is running.
- FusedOnFlag: Always true.
- FusedOffFlag: Always false.
More flag types are intended (Resource & SystemProperty backed,
Strings, Floats, Ints, etc). but this cl represents the MVP.
More about the details of this client can be read at:
http://go/android-flagging-dd
Test: m Android-Flags
Bug: 279054964
Change-Id: I0e455bf69f01dc675ec8bf64e584e2beff4e72ce
10 files changed