J'ai une petite application Web, qui joue des sons très courts sur le clic de plusieurs boutons. Il cible explicitement Safari mobile sur iOS (iPad). Après avoir lu ici et ailleurs sur les nombreuses "lacunes" de l'audio HTML5 dans ce contexte sur Safari mobile et en essayant quelques "hacks" et astuces, je suis coincé avec une situation où Safari semble simplement (pour le manque de un meilleur mot) cassé:Mobile Safari: manifeste audio + cache
Je peux jouer le son A (ça prend beaucoup de temps pour le démarrer - je suppose qu'il est en train de retomber [encore]?) en cliquant sur le bouton A. Après cela, en cliquant sur le bouton B jouera immédiatement le son A à nouveau. Pareil pour le bouton C. Dans certains cas, il jouera un son différent, parfois même le bon. Mais surtout le son A. Le format utilisé était .aiff, est maintenant .m4a.
Après avoir écrit quelques petites versions moi-même, je décide d'aller à la bibliothèque Buzz pour gérer le son chargement/lecture/etc ..
Bizarrement, leur démo comprend un jeu, ce qui fait à peu près exactement ce que J'ai besoin de et déclenche le même comportement défectueux. Je me suis même retrouvé dans une situation où n'importe quel lecteur audio dans Safari mobile dans n'importe quel onglet jouait un certain son sur le jeu démo Buzz (!). J'espérais qu'un manifeste de cache pourrait aider à surmonter les limitations de préchargement d'Apple et forcer l'application à jouer le son juste après avoir appuyé sur le bouton en mode déconnecté. Mais après avoir confirmé que toute l'application avait été mise en cache, je ne peux pas lire/entendre aucun son en mode déconnecté.
Est-ce que quelqu'un a réussi à faire fonctionner quelque chose comme ça? (- Après avoir vu les modalités de traitement de certaines choses, je ne vous attendez pas à une réponse beaucoup, mais ...)
Mise à jour 1:
L'exemple dans cette réponse provoque le même effet: How to synthesize audio using HTML5/Javascript on iPad
Mise à jour 2:
Mise à jour iOS (et donc Safari) semble résoudre le bug audio. Le manifeste du cache ne semble cependant pas affecter les fichiers audio. Ces fichiers ne sont tout simplement pas disponibles du tout. Après avoir supprimé le manifeste du cache, l'application fonctionne correctement, mais l'ajouter à l'écran d'accueil et le recharger empêche la lecture de l'audio.
Merci beaucoup! Il y a beaucoup de bons conseils ici, il semble. Certainement aller essayer quelques choses. – polarblau
Une chose supplémentaire que vous devez savoir est qu'il est impossible de mettre en cache audio ou vidéo sur iOS. Même avec appcache. – idbehold
pouvez-vous donner un exemple de code pour - déplacer la position de lecture à la position de départ appropriée. Aussi, si vous voulez jouer la piste pendant 3 secondes, comment l'arrêtez-vous? – Jon