2014-03-25 26 views
1

我目前正在開發一個項目,爲公司開發電子運動流式日曆。該應用程序工作正常,但問題是,抽搐只能讓你流Flash,而對於Android,谷歌決定取消支持後不起作用。 Http-live-streaming並沒有得到很好的支持,所以該團隊目前處於死衚衕。Twitch應用程序如何流向Android?

因此,我的問題是:如何Twitch應用程序流Android?
它適用於不支持Flash或HLS的Android設備,所以應該有另一種方式。

回答

1

我的猜測是它可能已經在其Flash客戶端中使用了HLS或RTSP(RTMP + RTSP是最常見的場景),Android應用程序僅僅是另一個流客戶端實現。

從HLS開始,它不需要任何形式的本機支持來處理Android,它只是簡單的HTTP,如果你願意,你甚至可以自己寫實現。本機MediaPlayer API Android已經提供了實現。 RTMP + RTSP也是一樣。

所以,你的問題的,這裏有兩種方式我能想到的解決這個問題:

  1. 獲取支持分組sniffering路由器(也許一個路由器的OpenWRT閃過並安裝tcpdump的),和反向設計使用的URL和協議抽搐Android客戶端,然後在您的應用中使用它。

    優點:對抽搐應用本身

    缺點沒有依賴性:更難拉斷,可能會破壞如果抽搐改變了它的內部協議

  2. 反向工程用來傳遞到它的視頻播放器的意圖抽搐應用活動,並模仿你自己的一個讓用戶打開播放器觀看流。

    工具可能對你有用:https://play.google.com/store/apps/details?id=uk.co.ashtonbrsc.android.intentintercept

    優點:它更可靠和更一致的

    缺點:如果目的是私有的可能無法正常工作,取決於用戶在安裝twtich應用

UPDATE:

  • 我剛發現抽搐網站開通e也適用於Android本機瀏覽器。似乎它使用HTML5標準中的<video>標記。因此,最簡單的解決方案可能只是使用WebView環繞該流頁面,但對用戶體驗不利。

    或者,您可以編寫一個接受流頁面URL作爲參數並將視頻標記作爲輸出的服務器端代碼,並使用正則表達式或XPath或一些XML解析器庫將<video>標記提取到客戶端。客戶端應用程序可以只設置一個WebView,其中只有<video>標籤。這種方法可以防止你的應用程序停止工作,如果Twitch改變其頁面結構。如果您不想使用WebView,則可以提取該<video>標記的src屬性,並在Android的本機MediaPlayer AP上播放它(如果需要)。

  • +0

    讓我知道它是否可以通過電子郵件發送請謝謝 – CarlLee

    +0

    我會盡快測試我有空!提前致謝! – Josmomo

    +0

    @Josmomo我測試了'