Tôi đang có một ứng dụng web nhỏ, phát các bit âm thanh thực sự ngắn trên một vài nút. Nó nhắm mục tiêu rõ ràng Safari trên thiết bị di động trên iOS (iPad).Mobile Safari: Audio + cache manifest
Sau khi đọc ở đây và ở đâu đó về một số "thiếu sót" của âm thanh HTML5 trong ngữ cảnh này trên Safari di động và thử một vài "thủ thuật" và thủ thuật, tôi bị kẹt với một tình huống mà Safari có vẻ đơn giản (vì thiếu một từ tốt hơn) bị hỏng:
Tôi có thể phát âm thanh A (phải mất một thời gian dài để bắt đầu - tôi giả định nó giảm xuống [lần nữa]?) trên nhấp vào nút A. Sau đó, nhấp vào nút B sẽ ngay lập tức phát lại âm thanh A. Tương tự cho nút C. Trong một số trường hợp, nó sẽ phát âm thanh khác nhau, đôi khi thậm chí là âm thanh phù hợp. Nhưng chủ yếu là âm thanh A. Định dạng được sử dụng là .aiff, bây giờ là .m4a.
Sau khi viết một vài phiên bản nhỏ bản thân mình, tôi quyết định đi với thư viện Buzz để xử lý việc tải âm thanh/chơi/etc ..
Funnily đủ, bản demo của họ bao gồm một trò chơi, mà làm khá nhiều chính xác những gì Tôi cần và kích hoạt cùng một hành vi bị lỗi. Tôi thậm chí đã kết thúc trong một tình huống mà bất kỳ trình phát âm thanh nào trong trình duyệt Safari trên thiết bị di động trong bất kỳ tab nào cũng sẽ phát ra một âm thanh nhất định trong trò chơi trình diễn Buzz (!).
Tôi đã hy vọng tệp kê khai bộ nhớ cache có thể giúp khắc phục các hạn chế tải trước của Apple và buộc ứng dụng phát âm thanh ngay sau khi nhấn nút ở chế độ ngoại tuyến. Nhưng sau khi xác nhận rằng toàn bộ ứng dụng đã được lưu vào bộ nhớ cache, tôi không thể phát/nghe thấy bất kỳ âm thanh nào trong chế độ ngoại tuyến.
Có ai quản lý để có được một cái gì đó như thế này để làm việc bằng cách nào đó? (- Có nhìn thấy làm thế nào Apple xử lý thứ nhất định, tôi không mong đợi nhiều phản ứng, mặc dù ...)
Cập nhật 1:
Ví dụ trong câu trả lời này làm cho tác dụng tương tự: How to synthesize audio using HTML5/Javascript on iPad
cập nhật 2:
Cập nhật iOS (và vì vậy Safari) dường như giải quyết lỗi âm thanh. Tuy nhiên, tệp kê khai bộ nhớ cache dường như không ảnh hưởng đến tệp âm thanh. Các tệp này hoàn toàn không có sẵn.
Sau khi xóa tệp kê khai bộ nhớ cache, ứng dụng hoạt động tốt, nhưng thêm nó vào "màn hình chính" và tải lại nó cũng ngăn không cho âm thanh phát.
Cảm ơn rất nhiều! Có rất nhiều lời khuyên tuyệt vời ở đây có vẻ như. Chắc chắn sẽ thử một vài thứ. – polarblau
Một điều nữa bạn cần biết là không thể lưu trữ âm thanh hoặc video trên iOS. Ngay cả với appcache. – idbehold
bạn có thể đưa ra một ví dụ về mã cho - di chuyển vị trí phát đến vị trí bắt đầu thích hợp không. Ngoài ra nếu bạn muốn phát bản nhạc trong 3 giây thì làm cách nào để dừng bản nhạc đó? – Jon