[ https://issues.apache.org/jira/browse/CB-14120?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16504864#comment-16504864 ]
Bilal Adhi commented on CB-14120: --------------------------------- I am facing the same problem. 1st thing i can not get the duration of media file, then i try to use recursive function on (onSuccess) event of mp3 with new file name or index everything is fine with Android (any version) and iOS (except 11.3 and 11.4). *Here are details of my ionic versions* li packages: (/usr/local/lib/node_modules) @ionic/cli-utils : 1.19.2 ionic (Ionic CLI) : 3.20.0 global packages: cordova (Cordova CLI) : 7.1.0 local packages: @ionic/app-scripts : 2.1.3 Cordova Platforms : android 6.3.0 ios 4.5.4 Ionic Framework : ionic-angular 3.6.0 System: ios-deploy : 1.9.2 ios-sim : 5.0.13 Node : v6.11.0 npm : 3.10.10 OS : macOS High Sierra Xcode : Xcode 9.3.1 Build version 9E501 Environment Variables: ANDROID_HOME : not set Misc: backend : pro > Playback issues in iOS 11.3/11.4 > --------------------------------- > > Key: CB-14120 > URL: https://issues.apache.org/jira/browse/CB-14120 > Project: Apache Cordova > Issue Type: Bug > Components: cordova-plugin-media > Environment: Ionic 3, Angular JS 4 > Reporter: Muddasir Lakhani > Priority: Blocker > > I am trying to play multiple audio tracks one after the other using the Media > Plugin. > On pressing play, I download all the tracks as a zip file, and then play them > one after the other until the last track is played. This works fine on > Android (all models) and also on iOS up to 11.2. On iOS 11.3 onwards, the > next track never starts from the beginning, but from a random duration. So > basically if an Album has 4 tracks, first one will play from duration 00:00, > and then the next ones will start to play from random duration, and never > from 00:00. > Code Snippet is below: > {{if (ContainerClass.GetPlatformName() == "android") { this._mFile = > this.media.create(this._URL + "/" + AlbumNo + "/" + this._fileName[index]); } > else if (ContainerClass.GetPlatformName() == "ios") { this._mFile = > this.media.create((this._URL + "/" + AlbumNo + "/" + > this._fileName[index]).replace(/^file:\/\//, '')); } > this._mFile.onStatusUpdate.subscribe(status => console.log(status)); > this._mFile.stop(); this._mFile.play(); ServicesClass._mFile = this._mFile; > ServicesClass._isPlaying = 1; ServicesClass._playingAlbumNo = this.AlbumNo; > ServicesClass._isPlaying = 1 this._isPlaying = 1; > this._mFile.onSuccess.subscribe(result => { index++; this._playingIndex = > index; this._mFile.release(); if (ServicesClass._stopPlaying == false) { > this.PlayFiles(AlbumNo, index); this.showMp3Player(true); } else { return; } > }); this._mFile.onError.subscribe(error => console.log('Error!', > JSON.stringify(error))); } }} > -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@cordova.apache.org For additional commands, e-mail: issues-h...@cordova.apache.org