我需要開發2個應用程序「發件人」和「接收器」。這兩個將執行從發件人到接收器的屏幕鏡像。從Android手機投射屏幕到Android平板電腦
我該怎麼做?是否有任何內置的API /庫可用於相同? 我可以使用Miracast來配合嗎?如果,請引導我。
假設:兩個設備將保持在同一個wifi上。
我需要開發2個應用程序「發件人」和「接收器」。這兩個將執行從發件人到接收器的屏幕鏡像。從Android手機投射屏幕到Android平板電腦
我該怎麼做?是否有任何內置的API /庫可用於相同? 我可以使用Miracast來配合嗎?如果,請引導我。
假設:兩個設備將保持在同一個wifi上。
要從發件人處收集UI,您可以嘗試創建與我的MirroringFrameLayout
相似的東西,從the CWAC-Layouts library。設計用於在具有MirroringFrameLayout
的相同設備上更新單獨的Mirror
View
,例如在觸摸屏上具有MirroringFrameLayout
,並且通過Presentation
在外部顯示器上顯示Mirror
。
您遇到的問題是性能問題,因爲我目前的方法會將整個MirrorFrameLayout
的內容繪製到Bitmap
,然後由Mirror
顯示。這將需要您在每次UI更改時通過網絡連接發送新的位圖,這可能會很慢。所以,雖然我的方法很簡單,但您可能需要更加了解您的用戶界面正在做什麼,以便您可以通過較小的更新進行發佈。
最好的辦法可能是停止完全思考「屏幕鏡像」,而是專注於「操作鏡像」。例如,假設發件人是繪圖應用程序,並且Receiver應該看到圖紙。不是通過屏幕發送,而是發送用戶執行的繪圖操作,並在Receiver上應用這些相同的操作。
「是否有任何內置的API /庫可用於相同?」 - 沒有。 「我可以用Miracast來配合嗎?」 - 沒有。除此之外,您需要提供有關「發件人」應用試圖發送的更多信息。它試圖發送自己的用戶界面?它是否試圖發送屏幕上的任何內容,包括其他應用程序的內容? – CommonsWare
@CommonsWare感謝您的輸入。 「發件人」將鏡像其自己的用戶界面,即在其自己的屏幕上的內容,這些可以是文檔和圖像。我不需要訪問其他應用的內容。 – user3454913