PhiloNL / philo-dev-comments

0 stars 0 forks source link

electron-auto-update-explained/ #6

Open utterances-bot opened 2 years ago

utterances-bot commented 2 years ago

Electron auto update introduction

Step by step guide on using Electron Auto Update to distribute new versions of your application to your users.

https://philo.dev/electron-auto-update-explained/

sandeep1995 commented 2 years ago

The built in autoUpdater is pretty poor in terms of bandwidth usage. I have built a solution where it uses binary diffing to generate the deltas and it updates downloading few KBs only.

Check out here: https://github.com/electron-delta/electron-delta

aprilandjan commented 1 year ago

@PhiloNL This article is very detailed, especially the Race condition on macOS with Squirrel updater part. Thanks!

Here in my electron application, I also use this same find-process-and-check-if-updater-is-on-going solution, but with a maximum retry for 5 times and each relaunch have a 5 second delay, to try to provide a better chance for squirrel ShipIt service to run.

Since the process-check progress should be executed everytime the app is launched, it will definitely affect the startup timecost performance of the app.

But even with that, the success upgrade rate of my app is still below 95%, and upgrade failures occur randomly. I'm wondering if there's any better method we can use 🤔