You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/06/05 06:18:04 UTC

[jira] [Commented] (CB-11513) iOS memory warning stops sound, but does not send status to JS-client

    [ https://issues.apache.org/jira/browse/CB-11513?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16036585#comment-16036585 ] 

ASF GitHub Bot commented on CB-11513:
-------------------------------------

Github user ghenry22 commented on the issue:

    https://github.com/apache/cordova-plugin-media/pull/120
  
    I have merged this into my project and tested and confirm that it does what it says on the box.
    
    Before: simulate memory warning on the iOS simulator and audio stops instantly on the native side.  App continues to function otherwise but no longer plays any audio
    
    After: simulate a memory warning on the iOS simulator and audio continues to play as expected, all works as normal.


> iOS memory warning stops sound, but does not send status to JS-client
> ---------------------------------------------------------------------
>
>                 Key: CB-11513
>                 URL: https://issues.apache.org/jira/browse/CB-11513
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: cordova-plugin-media
>    Affects Versions: 3.6.3, 4.1.3, 6.4.0
>         Environment: iOS 9 and iOS 10
>            Reporter: Thomas K.
>              Labels: easyfix
>
> If iOS issues a memory warning while playing a sound, all sounds are terminated. However the ios/CDVSound.m plugin does not update the state of its JS-clients, so the last state the Client knows is Media.MEDIA_RUNNING, which is untrue after a memory warning. This results in incorrect clientside status.
> Problem: A user's software component may send pause() instead of play() (toggle button) effectively rendering the sound unplayable without recovery. This happened in our case.
> Fix: Do not discard currently playing sounds. The first memory warning arrives exactly when the App enters the yellow area and consumes 500MB however it may consume 750MB and more according to Xcode so terminating sounds on "memory warning" is incorrect behavior.
> https://github.com/apache/cordova-plugin-media/blob/master/src/ios/CDVSound.m#L814
> How to reproduce: Add 1 or 2 large animated GIFs with 200+ frames to the UIWebView, this will consume 500MB quickly while playing the GIFs, or simulate the memory warning using the iOS Simulator while playing a sound.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org