RocketChat / Rocket.Chat.Cordova

Rocket.Chat Cross-Platform Mobile Application via Cordova (DEPRECATED)
MIT License
104 stars 109 forks source link

Not updating cached assets when confirming dialog #50

Closed geekgonecrazy closed 8 years ago

geekgonecrazy commented 8 years ago

screenshot_20151209-190820

On Android, this keeps coming up. I get 3-4 copies of it.

Clearing data works for a while. After switching servers or it being in the background for a while it seems to do this.

Clicking update sometimes brings to server list and seems to break

Morgul commented 8 years ago

@geekgonecrazy digging into this, I think I've figured out the mechanism a bit more. On my self hosted instance, I only get the update message after I upgrade my instance. Regardless of if I hit 'Update' or 'Cancel', the files for that server are never updated. I have to clear the data in order to get the latest changes.

Clearly, it seems like the 'update' functionality simply isn't working right, and doesn't update the files. Everything else, I suspect, is actually correct.

geekgonecrazy commented 8 years ago

@Morgul that makes sense! That explains why the demo server some times shows like 4-5 of them. Since it updates a lot some days. :)

Morgul commented 8 years ago

@geekgonecrazy So, I've traced through the code. Here's is what I've been able to determine, but there's some big questions I have, since I don't know cordova (or coffee script).

1) That dialog appears here: /www/coffee/servers-list.coffee#L120

2) That starts a new local server, passing in some get parameters /www/coffee/servers-list.coffee#L118

3) I have no idea how those get parameters are turned into commands, but I think it's supposed to execute this code: /www/coffee/index.coffee#L50-L70

@geekgonecrazy, @rodrigok Any thoughts? Am I even in the right ballpark?

geekgonecrazy commented 8 years ago

@morgul you are for sure on the right track. I just noticed today that the mention bar wasn't showing up. So clicking it isn't actually getting the update. So the dialog is real, its just never triggering the update.

rodrigok commented 8 years ago

The update works fine in iOS, the problem is related with Android and redirects, seems that the cordova do not fire the "deviceready" correctly after redirects on Android.

I will try to fix that.

rodrigok commented 8 years ago

@geekgonecrazy I published a new version 2.2.1, can you test?