Standalone App not Updating in Appetize

#1

We run into this problem that the standalone Android Expo App we’ve uploaded into Appetize is not uploading it self.
We’ve build the standalone app with theapp.json version of 2.0.1 and then did exp publish again with app.json version 2.0.3. however the when we run the simulator on Appetize, we’ve discovered that the app was not updated. A further look into the log has revealed this

D/b       ( 3112): Do not have cached source file for https://d1wp6m56sqw74a.cloudfront.net/%40beanworktesting%2Fbeanworks%2F2.0.3%2Fec6dbce60dfa70803e982bb7473f7e92-19.0.0-android.js

D/b       ( 3112): Successfully preloaded manifest and bundle for https://exp.host:443/@beanworktesting/beanworks https://d1wp6m56sqw74a.cloudfront.net/%40beanworktesting%2Fbeanworks%2F2.0.3%2Fec6dbce60dfa70803e982bb7473f7e92-19.0.0-android.js

I/ReactNativeJS( 3112): Running application "main" with appParams: {"initialProps":{"exp":{"initialUri":"https://exp.host:443/@beanworktesting/beanworks","manifest":{"iconUrl":"https://d1wp6m56sqw74a.cloudfront.net/~assets/7721191ab0c288469fd7677203cb8652","isVerified":true,"version":"2.0.1","loading":{"iconUrl":"https://d1wp6m56sqw74a.cloudfront.net/~assets/978c1bee49d7ad5fc1a4d81099b13e18","backgroundImage":"./src/theme/assets/images/splash.png","hideExponentText":true,"icon":"./src/theme/assets/images/transparent.png","backgroundImageUrl":"https://d1wp6m56sqw74a.cloudfront.net/~assets/6a3e6fa40f2bf28304ee79b5b7bb3881"},"slug":"beanworks","icon":"./src/theme/assets/images/icon.png","sdkVersion":"19.0.0","packagerOpts":{"nonPersistent":"--nonPersistent"},"name":"Beanworks","publishedTime":"2017-09-08T17:45:04.916Z","revisionId":"2.0.1-r.g4aA0e51Wv","orientation":"portrait","android":{"iconUrl":"https://d1wp6m56sqw74a.cloudfront.net/~assets/7721191ab0c288469fd7677203cb8652","versionCode":2,"icon":"./src/theme/assets/images/icon.png","package":"com.beanworks.mobile"},"privacy":"unlisted","id":"@beanworktesting/beanworks","bundleUrl":"https://d1wp6m56sqw74a.cloudfront.net/%40beanworktesting%2Fbeanworks%2F2.0.1%2Fee170fee7458c0f186985c8ac1b4edb2-19.0.0-android.js","ios":{"buildNumber":"2","iconUrl":"https://d1wp6m56sqw74a.cloudfront.net/~assets/7721191ab0c288469fd7677203cb8652","supportsTablet":true,"icon":"./src/theme/assets/images/icon.png","bundleIdentifier":"com.beanworks.beanapp"}},"shell":true}},"rootTag":1}. __DEV__ === false, development-level warning are OFF, performance optimizations are ON

So the first two lines has shown that the new manifest and js bundle has been preloaded, but then the last line shows the old manifest was used. which is probably why we see the app not being updated.

Has anyone seen this or resolved this?

#2

We made a change in SDK 20 where standalone Android apps will load the JS bundle embedded in it from the time you built the APK, and search for JS updates in the background. This is so that the app loads quickly for users without waiting on network I/O (covered in “Improved loading screen, faster startup on Android” on https://blog.expo.io/expo-sdk-v20-0-0-is-now-available-79f84232a9d1). So you’ll need to quit the app in the Appetize emulator and then reopen it a second time to load the new JS bundle.

#3

actually we are still on SDK 19… could that be some other cause?

#4

If you built your standalone app after the release of SDK 20, you’ll be using the new bundle download policy.

1 Like
#5

the solution you gave worked though, so I suppose SDK 19 works the same way then…:sweat_smile: