cmsdk: Add support for more preference constraints

 * Add support for negation- prefix with !
 * Add requiresAction constraint, which checks if an application is
   available to resolve the given action
 * Fix issues with operations order
 * Add flag to remove a preference if it's intent can't be resolved
 * Add helper to allow setting minLines of a preference, since it's
   common for things to get weird with the kinds of behavior we
   are introducing everywhere
 * Add support for nuking *other* preferences. For example with
   Doze, many devices have custom features and a extra_settings
   panel which is redundant with the switch. Now we can trivially
   override the one we don't want.

Change-Id: Ibb14b05add56b403013e908db1105dce9d34faad
9 files changed
tree: 2f243b9b245e7327c42bd824a6abbead2d73d133
  1. api/
  2. cm/
  3. host/
  4. packages/
  5. samples/
  6. sdk/
  7. tests/
  8. .gitignore
  9. Android.mk
  10. CleanSpec.mk
  11. org.cyanogenmod.platform.xml
  12. README.md
README.md

CyanogenMod Platform SDK

The Platform SDK provides a set of APIs that give you easy access to a variety of different features within CyanogenMod. The SDK exposes APIs and system level framework access in the Android framework that aren't available in any other distribution.

Setup

You can either download from prebuilts hosted on github or pull directly via Gradle.

Building against release artifacts

Our stable releases are mirrored in Maven Central, and you can fetch the current release by setting your build.gradle dependencies to

dependencies {
    compile 'org.cyanogenmod:platform.sdk:5.+'
}

Building against development snapshots

Within build.gradle make sure your repositories list sonatype OSS repos for snapshots

repositories {
    maven {
        url "https://oss.sonatype.org/content/repositories/snapshots/"
    }
}

You can target the future or development branch by setting your dependencies for 6.0-SNAPSHOT

dependencies {
    compile 'org.cyanogenmod:platform.sdk:6.0-SNAPSHOT'
}

WIKI

For further inquiries regarding this project, please reference the wiki.