OTA updates for sideloaded app

Hi, I have sideloaded an app to OSx.
I used:
expo build:ios --provisioning-profile-path ~/Downloads/provisioningProfile.mobileprovision --release-channel prod
and then (successfully) used xcode to push the resulting ipa file to the device.

(where the provisioning profile is adhoc and identifies the target device).

However I would like to use OTA updates. So modified the app and tried:
expo publish --release-channel prod

Should the new publication be pulled from the expo prod channel when I next run the app on the device, or am I missing a step?

Please see publish output below:

expo publish --release-channel prod

  • Expo SDK: 38.0.0
  • Release channel: prod
  • Workflow: Managed

Building optimized bundles and generating sourcemaps…
Starting Metro Bundler
Building iOS bundle
Building Android bundle
Finished building JavaScript bundle in 1787ms.
Building source maps
Finished building JavaScript bundle in 1498ms.
Finished building JavaScript bundle in 353ms.
Finished building JavaScript bundle in 106ms.
Building asset maps
Finished building JavaScript bundle in 1031ms.
Finished building JavaScript bundle in 1038ms.

Bundle Size
┌ index.ios.js 1.59 MB
├ index.android.js 1.59 MB
├ index.ios.js.map 5.3 MB
└ index.android.js.map 5.33 MB

:bulb: JavaScript bundle sizes affect startup time. Learn more: https://expo.fyi/javascript-bundle-sizes

Analyzing assets
Saving assets
No assets changed, skipped.

Processing asset bundle patterns:

  • /Users/me/Documents/dir/packages/appname/**/*

Uploading JavaScript bundles
Publish complete

it depends on the configuration in your app. see: Configuring OTA Updates - Expo Documentation

notably, fallbackToCacheTimeout will determine how long to wait when launching to download an update. if the update doesn’t download in that time, it will launch the cached version and continue downloading in the background, to be applied on next startup

1 Like

Actually it did work. Very cool. Thanks for the fallbackToCacheTimeout tip - mine was set to zero - so worked on the second time of quitting/ restarting

1 Like

A couple of related questions:

  1. do I need to worry about whether the OTA will continue to work after an OS upgrade?
  2. I have a paid up Apple Developer account. Does that mean I don’t need to worry about the app being removed after 6 days?
  1. no, os updates are unrelated
  2. if you are using an ad-hoc provisioning profile then you can use the app until that profile expires