@capacitor-community/mdm-appconfig
TypeScript icon, indicating that this package has built-in type declarations

6.0.0 • Public • Published


MDM App Config

@capacitor-community/mdm-appconfig

Capacitor community plugin for reading app configurations written by a MDM (see appconfig.org) such as VMWare Workspace One.

Maintainers

Maintainer GitHub Social
Damian Tarnawsky dtarnawsky @damiantarnawsky

Versions

Plugin Capacitor Documentation
6.x 6.x README
5.x 5.x README
4.x 4.x README

Installation

npm install @capacitor-community/mdm-appconfig
npx cap sync

Configuration

Android

Add the following line to your androidmanifest.xml (under <application...>):

<meta-data android:name="android.content.APP_RESTRICTIONS" android:resource="@xml/app_restrictions" />

Create an XML file named app_restrictions.xml in the res/xml directory to house your defined app restrictions, the format for the XML can be found here.

Here is an example app_restrictions.xml that defines 3 strings (ionic-email, ionic-user, ionic-userid):

<?xml version="1.0" encoding="utf-8"?>
<restrictions xmlns:android="http://schemas.android.com/apk/res/android">
	<restriction android:key="ionic-email" android:title="Ionic Email" android:restrictionType="string" android:defaultValue="" />
	<restriction android:key="ionic-user" android:title="Ionic User" android:restrictionType="string" android:defaultValue="" />
	<restriction android:key="ionic-userid" android:title="Ionic Userid" android:restrictionType="string" android:defaultValue="" />
</restrictions>

Note: You must define keys in your app_restrictions.xml to be able to read their value at runtime.

iOS

No additional configuration is required for iOS.

Usage

import { AppConfig } from '@capacitor-community/mdm-appconfig';

// Get a value:
const result = await AppConfig.getValue({ key: 'my.variable.name' });
console.log(result.value);

If the key cannot be found the promise will be rejected.

VMWare Workspace 1

When distributing an Application you can create an Assignment and under Application Configuration you can send a set of configuration keys that can be read by your application. The screenshot belows shows keys called ionic-email, ionic-user and ionic-userid which Workspace 1 has will write with values related to the enrolled user. ws1-screenshot

API

getValue(...)

getValue(options: getValueOptions) => Promise<GetValueResult>

Get a value from App Config. On iOS, values are obtained from UserDefaults in com.apple.configuration.managed.

Param Type Description
options getValueOptions Options to get value

Returns: Promise<GetValueResult>

Since: 1.0.0


Interfaces

GetValueResult

Prop Type Description Since
value string The value 1.0.0

getValueOptions

Prop Type Description Since
key string The key (or variable name) 1.0.0

Package Sidebar

Install

npm i @capacitor-community/mdm-appconfig

Weekly Downloads

178

Version

6.0.0

License

MIT

Unpacked Size

20.8 kB

Total Files

23

Last publish

Collaborators

  • ionicjs
  • danielprrazevedo
  • nkalupahana
  • dtarnawsky
  • ryaa
  • dallasjames
  • tafelnl
  • thegnuu
  • pbowyer
  • capcombot
  • jcesarmobile
  • maxlynch
  • mhartington
  • it_mike_s
  • byrds
  • rdlabo
  • priyankpatel
  • dwieeb
  • stewan
  • arielhernandezmusa
  • jeepq
  • start9keagan
  • boosten
  • nklayman
  • ihadeed
  • ckgaparajita
  • jpender
  • nhyatt
  • pwespi
  • epicshaggy
  • thomasvidas
  • robingenz
  • diachedelic
  • johnborges
  • tobyas
  • elylucas
  • larsmikkelsen
  • giodimiliaionic
  • brownoxford
  • mrbatista
  • bazuka5801
  • hemang