/me.apla.cordova.app-preferences

App preferences plugin for cordova

Primary LanguageJavaApache License 2.0Apache-2.0

Application preferences Cordova plugin.

Store and fetch application preferences using platform facilities. Compatible with Cordova 3.x

Installing

From plugin registry:

$ cordova plugin add me.apla.cordova.app-preferences

From the repo:

$ cordova plugin add https://github.com/apla/me.apla.cordova.app-preferences

From a local clone:

$ cordova plugin add /path/to/me.apla.cordova.app-preferences/folder

More information: Command-line Interface Guide.

Using Plugman to Manage Plugins.

Synopsis

function ok (value) {}
function fail (error) {}


var prefs = plugins.appPreferences;

// store key => value pair
prefs.store (ok, fail, 'key', 'value');

// store key => value pair in dict (see notes)
prefs.store (ok, fail, 'dict', 'key', 'value');

// fetch value by key (value will be delivered through "ok" callback)
prefs.fetch (ok, fail, 'key');

// fetch value by key from dict (see notes)
prefs.fetch (ok, fail, 'dict', 'key');

Platforms

  1. Native execution on iOS using NSUserDefaults
  2. Native execution on Android using android.content.SharedPreferences
  3. Native execution on Windows Phone using IsolatedStorageSettings.ApplicationSettings
  4. Native execution on Windows 8 using IsolatedStorageSettings.ApplicationSettings
  5. (untested) fallback using localStorage

Notes

  1. iOS, Android and Windows Phone basic values (string, number, boolean) are stored using typed fields.
  2. Complex values, such as arrays and objects, are always stored using JSON notation.
  3. Dictionaries are supported on iOS and Windows 8 only, so on other platforms instead of using the real dictionary a composite key will be written like <dict>.<key>

Tests

Tests are available in src/test.js. After installing plugin you can add test code from this file and then launch testPlugin() function.

iOS, Android and Windows Phone 8 tests pass ok at the moment.

Preferences interface generator

You can find preliminary version of Settings.bundle generator in bin/build-app-settings.js. Only toggle switch is supported for now.

Credits

Originally ported from: https://github.com/phonegap/phonegap-plugins/tree/master/iOS/ApplicationPreferences

Another android implementation for cordova 2.x: https://github.com/macdonst/AppPreferences