~/swaraj.dev
Back to all posts
March 30, 20261 min read

Incremental OTA Updates with Expo EAS Update

Learn how to use Expo's EAS Update to push small, incremental over‑the‑air patches without rebuilding the whole binary.

expoeasotadeveloper-experience

Insight

Expo EAS Update lets you ship JavaScript and asset changes to users without submitting a new store build. The key is to keep the update payload minimal: only the files that actually changed are bundled, and the client can apply them on the next app launch. This approach reduces bandwidth, speeds up rollout, and avoids the friction of App Store reviews for every tweak.

Example

import * as Updates from 'expo-updates';

export default function useEasUpdate() {
  React.useEffect(() => {
    async function check() {
      const { isAvailable } = await Updates.checkForUpdateAsync();
      if (isAvailable) {
        await Updates.fetchUpdateAsync();
        // Prompt user or auto‑reload
        await Updates.reloadAsync();
      }
    }
    check();
  }, []);
}

The snippet checks for an update, fetches only the changed modules, and reloads the bundle.

Takeaway

Enable EAS Update in your eas.json, keep your JavaScript modular, and you’ll be able to push tiny fixes instantly—no new binary, no store review, just a seamless OTA experience.