dmarmor / epichrome

An application and Chrome extension for creating web-based applications that work like standalone Mac apps.
GNU General Public License v3.0
854 stars 57 forks source link

epichrome helper not working since 2.3.0 upgrade #217

Open timshutes opened 4 years ago

timshutes commented 4 years ago

Ever since upgrading to 2.3.0 and updating all my apps, they are not handling URLs properly. For instance, when using alfred app to run a google search, a random epichrome app will open -- usually the last app I used -- and will not open the URL passed properly, but will open the default page for that browser.

When I first updated to 2.3.0, I had to uninstall and reinstall all the epichrome helper extensions. I had repeated problems with this - getting the error "epichrome helper is not connected" several times.

I still cannot get the helper app to connect to Google Chrome (Version 81.0.4044.138). See screenshot. Any fix coming for this? It has ruined URL handling on my machine for the time being. Greatly appreciate everything you've done with this app and hoping for a fix soon.

Screenshot 2020-05-14 10 12 37
dmarmor commented 4 years ago

I might need some more information to help you with this. Can you let me know the following?

  1. Are you using any kind of link router as your default browser (e.g. Browser Fairy, Choosy, Finicky, etc.)? If not, what is your default browser?

  2. Identify one of the problem apps that opens upon doing an Alfred search, and run it from its main app (being sure not to run it from the engine app, which would be what's in the dock if you choose the Keep in Dock option when the app is running), then quit again. The next time you do that Alfred search, does the search still open that app?

  3. I'm not sure I fully understand the situation with Epichrome Helper. You said you got the "not connected" error several times. Did it eventually resolve itself in those apps, or do you still see that message every time you run those apps? If you do, could you send me the Logs folder for one of those apps, as well as the Logs folder in ~/Library/Application Support/Epichrome/Logs?

  4. Regarding being unable to get Epichrome Helper to connect to Google Chrome, do you mean you've installed it in your actual Chrome browser (/Applications/Google Chrome.app or wherever it's installed)?

Thanks for the info! Hopefully we can get this resolved.

timshutes commented 4 years ago

Thanks for the quick response.

  1. No, although Choosy was installed on this machine at one point.
  2. EDIT: yes, the problem app still opens and still doesn't handle the URLs
  3. The latest with Epichrome helper is that I successfully got it installed on all my helper apps by turning off chrome sync, and resyncing chrome. However, it's still not working on chrome main app. Would the logs for main chrome be somewhere else?
  4. Yes I installed it on the main chrome browser as well - should I uninstall there? I presently have it disabled there.

EDIT: The problem is still occurring for me -- for a moment, resyncing my google account on all my apps fixed the problem, but now the problem is reoccurring again.

UPDATE: I tested and for each app that was opening and canceling the URL rewriting, I deleted the app + its folder in ~/Library/Application Support/Epichrome/ and recreated using the brave engine. After doing this with about 4-5 apps, Alfred is consistently sending URLs to google chrome. I disabled the epichrome helper app in google chrome (main) because it wasn't able to connect. Things seem to be working, but will update. Please let me know if I can help get to the bottom of why this was happening!

dmarmor commented 4 years ago

With regard to Epichrome Helper, please do not install it in the main Google Chrome.app. It was designed to work solely with Epichrome apps, and will not work properly when installed in Google Chrome.app.

It seems like something has gone wrong on your system that's causing it to become confused between Google Chrome.app and Chrome-based Epichrome apps. This has always been a danger with these apps (though it thankfully seems to happen quite rarely). The reason has to do with the architecture of Epichrome. When apps use the Chrome engine, they basically are Chrome when they're running. The running engine of a Chrome-based Epichrome app is an unaltered copy of Chrome with the same ID, which is where the system can get confused. This is why you don't see this problem with Brave-based built-in engine apps. Those each have their own unique ID, so the system doesn't get confused.

So I'd say if the Brave-based apps are working well for you, go ahead and switch over your apps to that engine. They offer other advantages too, in terms of better system notifications and permissions-handling. But if you need Chrome-based apps for some reason, then we'll still need to figure out how to de-confuse your system. Honestly I've never been able to recreate this confusion on my own system, so I'm a bit at a loss, but I'm happy to keep trying things on your system and see if anything helps! Just let me know.