cordova-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mike Kwan (JIRA)" <>
Subject [jira] [Updated] (CB-3534) Multiple CDVViewControllers - deviceready not fired and cordova.exec events queued up till backgrounding
Date Tue, 04 Jun 2013 17:37:26 GMT


Mike Kwan updated CB-3534:


Small change to example code - make things neater
> Multiple CDVViewControllers - deviceready not fired and cordova.exec events queued up
till backgrounding
> --------------------------------------------------------------------------------------------------------
>                 Key: CB-3534
>                 URL:
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>    Affects Versions: 2.3.0, 2.7.0
>         Environment: Reproducible on iPhone/iPad 6.1 Simulator and Device.
>            Reporter: Mike Kwan
>            Assignee: Shazron Abdullah
>         Attachments:, Screen Shot 2013-05-29 at 13.55.42.png, Screen Shot
2013-05-29 at 14.31.44.png
> Minimal example reproducing the problem is attached and set up as follows:
>  # Custom container view controller split into two halves each containing a _CDVViewController_
>  # Top half loads and after a delay (1000ms) fires a _NSNotification_
>  # In response to the _NSNotification_ the top half loads a green page and the bottom
half loads a red page
> Both red pages and green pages have an event listener for *deviceready*:
> {code}
> function onDeviceReady() {
>     alert('deviceready from XXXXX'); // colour here
>     cordova.exec(null, null, 'Echo', 'echo', ['hello']);
> };
> {code}
> {panel:title=Observed Behaviour|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1|bgColor=#FFFFCE}
>  - _deviceready_ is fired only for the red page (bottom)
>  - The _cordova.exec_ succeeds for the red page (bottom)
>  - _deviceready_ is not fired for the green page (top)
> {panel}
> {panel:title=Expected Behaviour|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1|bgColor=#FFFFCE}
> _deviceready_ should be fired for both the green and red page simultaneously and the
_cordova.exec_ events should go through immediately.
> {panel}
> {panel:title=Extra Details|borderStyle=dashed|borderColor=#ccc|titleBGColor=#F7D6C1|bgColor=#FFFFCE}
> This bug reproduces the first time the app is launched (reset the simulator to reproduce).
On subsequent launches the app behaves as expected.
> The _deviceready_ can be triggered by certain events for the top page:
>  - Pulling down the notification bar
>  - Backgrounding
> If _deviceready_ is triggered by pulling down the notification bar, the _cordova.exec_
is still not fired for the green page. The _cordova.exec_ message is queued up and finally
does go through when the app is backgrounded.
> {panel}
> This bug is remarkably similar to the following:
> Perhaps it is an edge case which was overlooked? This bug reproduces on 2.3.0 and 2.7.0
- I have not tried other versions yet.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message