Appfigurate™️
HomeDocumentation
  • Introducing Appfigurate™️ 3
  • Getting Started
    • Getting Started
    • Examples
    • Upgrade guide
      • v1.4.0 to v2.2.0
      • v2.1.1 to v2.2.0
      • v2.2.1 to v3.0.0
      • v3.2.1 to v4.0.0
    • iOS native app integration
      • iOS app extension integration
    • watchOS app integration
      • watchOS app extension integration
    • Android native app integration
    • Mobile Flutter integration
      • Flutter iOS
      • Flutter Android
    • React Native integration
      • iOS native module integration
      • Android native module integration
      • JavaScript integration
    • Third party remote configuration providers
      • Firebase Remote Config
      • Launch Darkly
      • Other third party remote configuration providers
  • Configuration subclasses
    • Supported property types
      • Boolean
      • Integer
      • Float
      • Double
      • Plain String
      • Encrypted String
    • Custom executable actions
    • Slider icon types
  • Additional reading
    • Info.plist options
    • AndroidManifest.xml options
    • Displaying overridden configuration
    • Security
      • Best practice
      • Encryption
      • Export compliance
      • App Store compliance
      • PrivacyInfo.xcprivacy
      • Rotating your private key
  • Automation testing
    • iOS native app automation testing
    • Android native automation testing
  • API
    • iOS and watchOS API
    • Android API
    • Mobile Flutter API
    • React Native API
  • Appfigurate User Guide
    • Introduction
    • Main menu
    • Select app
    • Add app
    • Import app
    • Install example apps
    • Settings
      • Passcode Lock
      • Restore
      • Backup
      • Delete all apps and Settings
      • Analytics
    • Edit app
    • Configure app
    • Permissions
  • Appfigurate SE user guide
    • Introduction
    • Manual encryption
      • ENCRYPTED_STRING macro/function
      • ENCRYPTED_STRING_IOS_WATCHOS macro/function
    • Setup iOS Simulator app
    • Setup Android Emulator app
    • Xcode source editor extension
      • Troubleshooting
    • Real device cloud testing services
      • BrowserStack
  • LEGAL
    • License Agreement
    • Privacy Policy
    • Release History
    • Third party notices
Powered by GitBook
On this page
  • function nativeValue(propertyName)
  • function setLogging(value)
  • function version()
  • function description()
  • function modifications()
  • function saveConfiguration()
  • function restoreConfiguration()
  • function addListener(...)
  1. API

React Native API

Tested version 0.75

PreviousAndroid native automation testingNextIntroduction

Last updated 5 months ago

function nativeValue(propertyName)

let value = await Appfigurate.nativeValue('propertyName');

Introspect the native app's (iOS) / (Android) subclass for the propertyName specified. The possible types returned are: , or . See for exact conversion semantics.

function setLogging(value)

await Appfigurate.setLogging(true);

When true, Appfigurate library debugging messages will be output to the console. The default is false.

It is best practice to distribute applications via TestFlight / App Store / Google Play with logging set to false. See also key in the (iOS, watchOS) file or (Android) in file.

function version()

await Appfigurate.version();

Returns the version of the Appfigurate library in the format major.minor.patch. e.g. 5.1.2

function description()

await Appfigurate.description();

Returns the textual representation of all properties.

Property names are shortened to camel case and appended with the value, except for NSString (Obj-C) / String (Swift, Java, Kotlin) properties which omit the property name.

e.g. debugLog=5 would be returned as DL=5.

function modifications()

await Appfigurate.modifications();

Returns the textual representation of all properties that have non default (overridden) values.

Property names are shortened to camel case and appended with the non default value, except for NSString (Obj-C) / String (Swift, Java, Kotlin) properties which omit the property name.

e.g. userInteractionTimeout=60.0 would be returned as UIT=60.0.

function saveConfiguration()

await Appfigurate.saveConfiguration();

Saves the configuration persisted in the Keychain (iOS) or EncryptedSharedPreferences (Android) into temporary storage.

Some apps have functionality to erase the Keychain or EncryptedSharedPreferences to reset apps back to factory defaults, which has the side effect of removing any Appfigurate configuration persisted in the Keychain or EncryptedSharedPreferences.

function restoreConfiguration()

await Appfigurate.restoreConfiguration();

Restores the configuration from temporary storage back into the Keychain (iOS) or EncryptedSharedPreferences (Android).

function addListener(...)

Registers a callback that will be invoked every time Appfigurate has updated the configuration of the app. The result parameter is a Map with a single entry. The entries key is 'APLConfigurationUpdatedAction' . The entries value is either null or a String. If null, then configuration was applied. If a String, then the an action was executed, and the value will be the name of the action.

AppfigurateEvents.addListener('APLConfigurationUpdated', result => {
    // do something
});
APLConfiguration
nz.co.electricbolt.appfiguratelibrary.Configuration
Boolean
String
Number
supported property types
Info.plist
AndroidManifest.xml
APLLogging
meta-data