Often it is necessary for the app developer to both query and trigger the app update manually instead of it happening automatically on app reload. Sometimes it's a good idea to wait for wifi or to wait for the end user to trigger it at their convenience. Codepush js api does well in this direction - https://github.com/Microsoft/react-native-code-push#javascript-api-reference

An api that works as follows will be nice

```

componentDidMount() {

Exponent.sync({key: key, installMode: Exponent.InstallMode.IMMEDIATE }, this.syncFn)

}

syncFn(status) {

switch (status) {

case Exponent.SyncStatus.CHECKING_FOR_UPDATE:

case Exponent.SyncStatus.UP_TO_DATE:

case Exponent.SyncStatus.DOWNLOADING_PACKAGE:

case Exponent.SyncStatus.INSTALLING_UPDATE:

case Exponent.SyncStatus.UPDATE_INSTALLED:

}

}

```