2012-12-25 90 views
2

我聽說Android設備不會播放html5中的某些音頻文件(例如,它們支持mp3,但不播放藉助某些非標準軟件創建的文件: )。無法在Android上播放音頻 - Sencha Touch SDK工具2.0.0

我嘗試了不同的變體,但沒有人爲我工作。

E.g.從here的非標準例如:

Ext.create('Ext.Container', { 
    fullscreen: true, 
    layout: { 
     type: 'vbox', 
     pack: 'center' 
    }, 
    items: [ 
     { 
      xtype : 'toolbar', 
      docked: 'top', 
      title : 'Ext.Audio' 
     }, 
     { 
      xtype: 'toolbar', 
      docked: 'bottom', 
      defaults: { 
       xtype: 'button', 
       handler: function() { 
        var container = this.getParent().getParent(), 
         // use ComponentQuery to get the audio component (using its xtype) 
         audio = container.down('audio'); 

        audio.toggle(); 
        this.setText(audio.isPlaying() ? 'Pause' : 'Play'); 
       } 
      }, 
      items: [ 
       { text: 'Play', flex: 1 } 
      ] 
     }, 
     { 
      html: 'Hidden audio!', 
      styleHtmlContent: true 
     }, 
     { 
      xtype : 'audio', 
      hidden: true, 
      url : 'touch/examples/audio/crash.mp3' 
     } 
    ] 
}); 

和音頻的html:

<audio controls> 
    <source src="resources/sound/1.mp3" type="audio/mpeg"> 
Can't play sound on your device. 
</audio> 

當我調試我的應用程序在Chrome瀏覽器中我聽到的聲音的幫助,但我沒有聽到它真正的設備(Android 2.3.5)。

在html變體的情況下,我看到一個滑塊抽搐並立即停留在進度條的末尾。在「播放」按鈕的情況下,除了缺失的聲音外,一切正常(圖形,播放/暫停)。

我沒有找到任何特別的Android權限選項的聲音,所以,我認爲權限不是原因。

問題。我錯了,是否可以播放任何mp3音頻?什麼是最簡單的工作?

+0

你可能對mp3文件本身或html5有問題,所以最好單獨檢查兩個文件。將文件加載到設備上的音樂庫中,看看它是否會播放,或嘗試使用已經證明可以在本地播放的音頻文件的網頁。 –

+0

@ChrisStratton我已經在兩款不同的瀏覽器上測試了Android設備上的網頁。播放器(音頻標籤)正常工作。那麼,這是Sencha Touch產品的問題嗎? – sergzach

+0

您尚未指定工作與非工作情況之間的單個變量。如果你有多個變量,你沒有一個有意義的測試。 –

回答

3

Sencha Touch Audio僅適用於Android/Chrome瀏覽器,不適用於設備。一種解決方案是用Phonegap包裝你的應用程序,並使用Media對象作爲音頻。很多麻煩,但主要是它的作品。