Known issues
Ionic live reload
- When you develop, if you use the Ionic live reload feature from the CLI, it will override the plugin, so you will never see your update.
Quasar live reload
- It uses the same system as ionic under the hood, so you will not see your updates.
Updates fail
- This usually happens when large updates (> 20mb) are pushed, a big percentage of users will not get the last version.
In the past, users needed to keep the app open until the download was done, now we use background download, but it’s still limited to a few seconds.
Android
Self Hosted
When you are pushing a self-hosted update, be mindful you cannot use “HTTP” endpoint as it’s against the security policies of Android apps, if you still want to do it, follow this guide:
Unzip
Unzip issue: DEFLATED entries can have EXT descriptor
If you zipped your bundle with something different than the CLI, the format or your zip could be incorrect, please use the CLI command npx @capgo/cli zip BUNDLE_FOLDER
.
This is a known issue of Java:
Clearfix issue
- If you have issues with usesCleartextTraffic, it’s because the plugin follows the good practice recommended by sonar cloud, in 90% of the cases it will work just fine, but with some plugins that causes issues.
To fix it, add in android/app/src/main/AndroidManifest.xml
in the <application>
key :
IOS
Network permissions
When using local server for testing update, the app will ask for network permission, it’s a normal behavior, it’s not the case when you use a remote server.
Both OS
When doing manual mode updates, some events are not easy to catch, for example the update fail triggers just before your JS code reloads, so you will not be able to catch it.
One alternative is to list the bundles and check error stats to know if the update fails.
We need to find a better way to handle this in the future, but it’s not a priority, since auto mode is the recommended way to do update.
PRs are welcome to help us improve this.
CLI
if your CLI has troubles doing anything,
Check if appId and appName are present in your capacitor.config.ts
Follow the guide of the official doc: