Synchronization loop

Hi,

I’ve just started to use the Live build feature today.

This is on Corona 2016.2997 under Windows 7 with a build for Android.

After initial build and deployment on 3 devices (Android 4.4.2 / 6.0 / 6.0.1), I can observe that :

  • on Android 4.4.2, there is no Live update at all
  • on Android 6.0.x, Live update is ok but there is a synchronization loop :
    • the app starts, the splashscreen is displayed, my main screen is displayed (which is the one with updates)
    • a popup with text “Synchronizing” is displayed and after a short time the app restarts. This sequence repeats infinitely until I kill the app (or switch off Wifi), but I can briefly see on my main screen that updates are effective. Once the app killed or Wifi switched off, when I start my app again (always with Wifi off), all is fine.

So, as for me :

  • Live update doesn’t seem to work on Android 4.4.2 (Wifi configuration is the same on my 3 devices)
  • Live update works on Android 6.0.x but I have to switch off Wifi after synchronization to test my app

Do you have any idea about this issues ?

In any case, Live update is a great feature and I love it !

:wub:

Just out of curiosity are you using any Symlinks in your project?

Rob 

Hi Rob,

I don’t think I use symlinks. Anyway I don’t know how to use them, so…

Can you look in your device’s console log for errors?

Rob

Rob, here is the log :

12-06 16:45:05.057 32142 32162 I Corona  : Platform: PLK-L01 / ARM Neon / 6.0 / Mali-T624 / OpenGL ES 3.1 v1.r8p0-01dev0.4078cee201e a91f87ad24a89593523d2 / 2016.2997 / français | FR | fr\_FR | fr 12-06 16:45:05.166 32142 32162 I Corona  : WARNING: Asset file "resources/streaks\_003.png" does not exist. 12-06 16:45:05.173 32142 32162 I Corona  : WARNING: Asset file "resources/button\_002\_01.png" does not exist. 12-06 16:45:05.180 32142 32162 I Corona  : WARNING: Asset file "resources/button\_002\_01.png" does not exist. 12-06 16:45:05.184 32142 32162 I Corona  : WARNING: Asset file "resources/icons.png" does not exist. 12-06 16:45:05.193 32142 32162 I Corona  : [menu.showWill] 12-06 16:45:05.194 32142 32162 I Corona  : [menu.onSystemEvent] applicationStart 12-06 16:45:05.195 32142 32162 I Corona  : [menu.showDid] 12-06 16:45:06.974 32142 32162 I Corona  : [menu.onSystemEvent] applicationSuspend 12-06 16:45:07.301 32142 32142 I Corona  : [menu.onSystemEvent] applicationExit 12-06 16:45:08.370 32142 32342 I Corona  : Platform: PLK-L01 / ARM Neon / 6.0 / Mali-T624 / OpenGL ES 3.1 v1.r8p0-01dev0.4078cee201e a91f87ad24a89593523d2 / 2016.2997 / français | FR | fr\_FR | fr 12-06 16:45:08.429 32142 32342 I Corona  : WARNING: Asset file "resources/streaks\_003.png" does not exist. 12-06 16:45:08.439 32142 32342 I Corona  : WARNING: Asset file "resources/button\_002\_01.png" does not exist. 12-06 16:45:08.443 32142 32342 I Corona  : WARNING: Asset file "resources/button\_002\_01.png" does not exist. 12-06 16:45:08.445 32142 32342 I Corona  : WARNING: Asset file "resources/icons.png" does not exist. 12-06 16:45:08.454 32142 32342 I Corona  : [menu.showWill] 12-06 16:45:08.454 32142 32342 I Corona  : [menu.onSystemEvent] applicationStart 12-06 16:45:08.455 32142 32342 I Corona  : [menu.showDid] 12-06 16:45:09.696 32142 32342 I Corona  : [menu.onSystemEvent] applicationSuspend 12-06 16:45:10.034 32142 32142 I Corona  : [menu.onSystemEvent] applicationExit

My project structure is like this :

Project/src/main.lua

Project/src/scene/menu.lua

Project/src/resources/icons.png (and other image files)

My project uses composer to navigate from one screen to another.

main.lua navigates to scene/menu.lua which is my main screen and embeds the resources which appear as warning in the log.

I don’t know why they appear as warning, because the display is correct.

I also put some debug lines at the beginning of some “crucial” parts of code. So you can see in menu.lua that show.will and show.did phases exist. I catched system events too and you can see 3 of them.

In my show.will code I only add listeners to graphical objects and system events. This is why applicationStart appear after menu.showWill and not before (as expected I guess). Note that if I disable all my app’s debug logs, the result is the same (in case writing into the log before applicationStart could cause some issue).

Here you get the synchronization loop, the app suspends and exits and immediately after, starts again.

Hello! We’re still working on Corona Live Builds, it is in beta, and such cases are very important to us.

“Synchronization Loop” means that something in your project can not be synchronized for some reason. Would it be possible for you to share problematic live built apk or source app? That way we can track down what is going on and fix the issue. It is very hard to tell what’s going on except that some part of the project is not getting synchronized.

I will PM with detail.

Exert from private messages. It appears that problem was with font file failing to synchronize for some reason.

This synchronization issue is due to a specific font which seems to make Live update looping.

The problem no longer appears with another font.

Corona staff is looking at that issue because changing font is not as easy (possible GUI modifications).

The origin of the issue has been found: Live build doesn’t support special characters in font filename.

So if the font filename is “Variété.ttf” then Live update will loop during synchronization. Changing the filename to something like “Variete.ttf” solves the problem.

Corona staff works to fix this issue soon.

By the way, this should be fixed in build 2016.3001. Non-ascii filenames should work since.

Just out of curiosity are you using any Symlinks in your project?

Rob 

Hi Rob,

I don’t think I use symlinks. Anyway I don’t know how to use them, so…

Can you look in your device’s console log for errors?

Rob

Rob, here is the log :

12-06 16:45:05.057 32142 32162 I Corona  : Platform: PLK-L01 / ARM Neon / 6.0 / Mali-T624 / OpenGL ES 3.1 v1.r8p0-01dev0.4078cee201e a91f87ad24a89593523d2 / 2016.2997 / français | FR | fr\_FR | fr 12-06 16:45:05.166 32142 32162 I Corona  : WARNING: Asset file "resources/streaks\_003.png" does not exist. 12-06 16:45:05.173 32142 32162 I Corona  : WARNING: Asset file "resources/button\_002\_01.png" does not exist. 12-06 16:45:05.180 32142 32162 I Corona  : WARNING: Asset file "resources/button\_002\_01.png" does not exist. 12-06 16:45:05.184 32142 32162 I Corona  : WARNING: Asset file "resources/icons.png" does not exist. 12-06 16:45:05.193 32142 32162 I Corona  : [menu.showWill] 12-06 16:45:05.194 32142 32162 I Corona  : [menu.onSystemEvent] applicationStart 12-06 16:45:05.195 32142 32162 I Corona  : [menu.showDid] 12-06 16:45:06.974 32142 32162 I Corona  : [menu.onSystemEvent] applicationSuspend 12-06 16:45:07.301 32142 32142 I Corona  : [menu.onSystemEvent] applicationExit 12-06 16:45:08.370 32142 32342 I Corona  : Platform: PLK-L01 / ARM Neon / 6.0 / Mali-T624 / OpenGL ES 3.1 v1.r8p0-01dev0.4078cee201e a91f87ad24a89593523d2 / 2016.2997 / français | FR | fr\_FR | fr 12-06 16:45:08.429 32142 32342 I Corona  : WARNING: Asset file "resources/streaks\_003.png" does not exist. 12-06 16:45:08.439 32142 32342 I Corona  : WARNING: Asset file "resources/button\_002\_01.png" does not exist. 12-06 16:45:08.443 32142 32342 I Corona  : WARNING: Asset file "resources/button\_002\_01.png" does not exist. 12-06 16:45:08.445 32142 32342 I Corona  : WARNING: Asset file "resources/icons.png" does not exist. 12-06 16:45:08.454 32142 32342 I Corona  : [menu.showWill] 12-06 16:45:08.454 32142 32342 I Corona  : [menu.onSystemEvent] applicationStart 12-06 16:45:08.455 32142 32342 I Corona  : [menu.showDid] 12-06 16:45:09.696 32142 32342 I Corona  : [menu.onSystemEvent] applicationSuspend 12-06 16:45:10.034 32142 32142 I Corona  : [menu.onSystemEvent] applicationExit

My project structure is like this :

Project/src/main.lua

Project/src/scene/menu.lua

Project/src/resources/icons.png (and other image files)

My project uses composer to navigate from one screen to another.

main.lua navigates to scene/menu.lua which is my main screen and embeds the resources which appear as warning in the log.

I don’t know why they appear as warning, because the display is correct.

I also put some debug lines at the beginning of some “crucial” parts of code. So you can see in menu.lua that show.will and show.did phases exist. I catched system events too and you can see 3 of them.

In my show.will code I only add listeners to graphical objects and system events. This is why applicationStart appear after menu.showWill and not before (as expected I guess). Note that if I disable all my app’s debug logs, the result is the same (in case writing into the log before applicationStart could cause some issue).

Here you get the synchronization loop, the app suspends and exits and immediately after, starts again.

Hello! We’re still working on Corona Live Builds, it is in beta, and such cases are very important to us.

“Synchronization Loop” means that something in your project can not be synchronized for some reason. Would it be possible for you to share problematic live built apk or source app? That way we can track down what is going on and fix the issue. It is very hard to tell what’s going on except that some part of the project is not getting synchronized.

I will PM with detail.

Exert from private messages. It appears that problem was with font file failing to synchronize for some reason.

This synchronization issue is due to a specific font which seems to make Live update looping.

The problem no longer appears with another font.

Corona staff is looking at that issue because changing font is not as easy (possible GUI modifications).

The origin of the issue has been found: Live build doesn’t support special characters in font filename.

So if the font filename is “Variété.ttf” then Live update will loop during synchronization. Changing the filename to something like “Variete.ttf” solves the problem.

Corona staff works to fix this issue soon.

By the way, this should be fixed in build 2016.3001. Non-ascii filenames should work since.