0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【技術(shù)分享】快速在SX-3568商顯主板的Android系統(tǒng)上實(shí)現(xiàn)雙屏異顯

AGk5_ZLG_zhiyua ? 來源:未知 ? 2023-02-24 12:05 ? 次閱讀
Linux上開發(fā)APP太過緩慢或者動畫不夠炫酷?該使用Android系統(tǒng)進(jìn)行開發(fā)啦!本文分享如何快速在SX-3568商顯主板的Android系統(tǒng)上實(shí)現(xiàn)雙屏異顯。

本次使用的平臺為致遠(yuǎn)電子SX-3568系列智慧商顯主板,支持HDMI、eDP、LVDS、MIPI DSI等多種顯示接口,搭載高性能GPU,具備視頻解碼能力,支持4K 60FPS顯示。本次選用HDMI屏幕作為主屏,MIPI DSI屏幕作為副屏進(jìn)行講解,使用SX-3568在Android系統(tǒng)上實(shí)現(xiàn)雙屏異顯,可以應(yīng)用在商業(yè)顯示器、智能家居等多種應(yīng)用場景。

8eed55e8-b3f7-11ed-bfe3-dac502259ad0.jpg??確認(rèn)主副屏

使用命令getprop | grep vendor.hwc.device可以查看當(dāng)前的主副屏。對應(yīng)屬性vendor.hwc.device.primary為主屏,vendor.hwc.device.extend為副屏??梢钥吹酱颂幹髌翞镸IPI DSI,副屏為HDMI。

8f01ccf8-b3f7-11ed-bfe3-dac502259ad0.png

8eed55e8-b3f7-11ed-bfe3-dac502259ad0.jpg??代碼實(shí)現(xiàn)

在MainAvctivity中實(shí)現(xiàn)showSecondByActivity方法,用于調(diào)用第二個(gè)Avctivity并綁定顯示器。
private void showSecondByActivity(Context context){
    ActivityOptions options = ActivityOptions.makeBasic();
    MediaRouter mediaRouter = (MediaRouter)
            context.getSystemService(Context.MEDIA_ROUTER_SERVICE);
    MediaRouter.RouteInfo route =
            mediaRouter.getSelectedRoute(MediaRouter.ROUTE_TYPE_LIVE_VIDEO);
    if (route != null) {
        Display presentationDisplay = route.getPresentationDisplay();
        options.setLaunchDisplayId(presentationDisplay.getDisplayId());
        Intent intent = new Intent(MainActivity.this, SecondActivity.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(intent, options.toBundle());
    }
}

第一步,在showSecondByActivity函數(shù)中,首先通過ActivityOptions類的makeBasic方法,創(chuàng)建一個(gè)基本的ActivityOptions類變量 ,ActivityOptions是一個(gè)可用于在新建一個(gè)Activity時(shí)候,將Bundle信息傳遞給新Activity的類,用于后面在創(chuàng)建新的Activity時(shí)候通過setLaunchDisplayId指定 SecondActivity 在啟動后應(yīng)顯示在副屏上;

第二步,獲取系統(tǒng)中的MediaRouter系統(tǒng)服務(wù),用于后續(xù)獲取顯示屏幕ID來指定屏幕。MediaRouter Service是一個(gè)用于多媒體路由的系統(tǒng)服務(wù),getSelectedRoute方法會返回一個(gè)可用的RouteInfo,也就是多媒體路由的對應(yīng)信息。然后使用getPresentationDisplay從路由信息中獲取一個(gè)新的Presentation,Presentation是一個(gè)特殊的Dialog,可以在創(chuàng)建它的時(shí)候?qū)⑺苯雨P(guān)聯(lián)到新的顯示器上;

第三步,調(diào)用getDisplayId方法獲取顯示器ID,將ActivityOptions的DisplayId設(shè)置為新的顯示器的ID,再通過Intent在新的Presentation創(chuàng)建一個(gè)新的Activity即可。這樣在新的Activity上顯示的內(nèi)容就會跟隨新的Presentation顯示在副屏上。

然后在MainAvctivity中就可以直接調(diào)用showSecondByActivity,比如在onCreate方法中調(diào)用。這里讓它顯示activity_main.xml里面的內(nèi)容。
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    showSecondByActivity(MainActivity.this);
}
SecondActivity類的內(nèi)容用于測試,僅僅用于顯示不同內(nèi)容。這里讓它顯示activity_second.xml里面的內(nèi)容,并讓activity_second.xml的內(nèi)容和activity_main.xml有差異。
public class SecondActivity extends AppCompatActivity {


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
    }
}
最后修改AndroidManifest,xml中內(nèi)容。Activity的多顯示器支持需要支持。同時(shí) application 或者 activity 需要支持分屏屬性即或者標(biāo)簽下設(shè)置新的屬性屬性用于指定應(yīng)用支持多窗口模式。

    <uses-feature android:name="android.software.activities_on_secondary_displays" />
    <application
        ...
        android:resizeableActivity="true"
        ...
        <activity
            android:name=".SecondActivity"
            android:exported="true">
        activity>
    application>
manifest>

8f3f5eb0-b3f7-11ed-bfe3-dac502259ad0.jpg顯示效果

編譯并運(yùn)行后,可以在SX-3568上看到雙屏異顯的效果如下圖,其中MIPI DSI主屏上顯示為activity_main.xml的內(nèi)容;HDMI副屏上顯示為activity_second.xml的內(nèi)容。

8f4fcdfe-b3f7-11ed-bfe3-dac502259ad0.jpg

8f3f5eb0-b3f7-11ed-bfe3-dac502259ad0.jpg技術(shù)交流長按識別如下二維碼可加入“工控板/核心板技術(shù)交流群”,與志同道合的朋友交流,并有專業(yè)技術(shù)人員為您答疑解惑,如有問題可以咨詢小致微信zlgmcu-888。8fea7f8e-b3f7-11ed-bfe3-dac502259ad0.png

8ffac966-b3f7-11ed-bfe3-dac502259ad0.jpg

90149fc6-b3f7-11ed-bfe3-dac502259ad0.jpg

906b5a64-b3f7-11ed-bfe3-dac502259ad0.jpg9089957e-b3f7-11ed-bfe3-dac502259ad0.jpg90a6f876-b3f7-11ed-bfe3-dac502259ad0.jpg90e7eb2e-b3f7-11ed-bfe3-dac502259ad0.jpg90f853d8-b3f7-11ed-bfe3-dac502259ad0.jpg911d61fa-b3f7-11ed-bfe3-dac502259ad0.jpg


原文標(biāo)題:【技術(shù)分享】快速在SX-3568商顯主板的Android系統(tǒng)上實(shí)現(xiàn)雙屏異顯

文章出處:【微信公眾號:ZLG致遠(yuǎn)電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 致遠(yuǎn)電子
    +關(guān)注

    關(guān)注

    13

    文章

    408

    瀏覽量

    31361

原文標(biāo)題:【技術(shù)分享】快速在SX-3568商顯主板的Android系統(tǒng)上實(shí)現(xiàn)雙屏異顯

文章出處:【微信號:ZLG_zhiyuan,微信公眾號:ZLG致遠(yuǎn)電子】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    迅為RK3588S開發(fā)板多屏同多屏多屏

    迅為RK3588S開發(fā)板多屏同多屏多屏
    的頭像 發(fā)表于 11-29 14:59 ?406次閱讀
    迅為RK3588S開發(fā)板多屏同<b class='flag-5'>顯</b>多屏<b class='flag-5'>異</b><b class='flag-5'>顯</b>多屏<b class='flag-5'>異</b>觸

    領(lǐng)域的國產(chǎn)一體機(jī)主板,提升顯示效果的解決方案

    現(xiàn)代商業(yè)顯示()領(lǐng)域,隨著信息化和數(shù)字化的快速發(fā)展,對顯示設(shè)備的要求不斷提高。領(lǐng)域涵蓋
    的頭像 發(fā)表于 09-04 10:08 ?375次閱讀

    MD9360多屏同應(yīng)用實(shí)例

    MD9360-T核心板多屏同、技術(shù),讓你的顯示學(xué)會分身術(shù)。MD9360-EV-Board評估板(如圖1所示)是致遠(yuǎn)電子精心推出的集工控與評估于一身的評估底板。該評估底板可選搭配M
    的頭像 發(fā)表于 08-07 08:25 ?372次閱讀
    MD9360多屏同<b class='flag-5'>顯</b><b class='flag-5'>異</b><b class='flag-5'>顯</b>應(yīng)用實(shí)例

    3568F-三屏同、方案演示

    、TFT LCD、HDMI OUT視頻接口,支持多屏,板載WIFI、Bluetooth模塊,支持選配4G/5G模塊、SATA固態(tài)硬盤,方便用戶快速進(jìn)行產(chǎn)品方案評估與技術(shù)預(yù)研。 圖
    發(fā)表于 07-25 15:06

    三屏案例分享,基于全國產(chǎn)RK3568J工業(yè)平臺!

    升級,實(shí)現(xiàn)多屏已不再困難。而作為國產(chǎn)工業(yè)處理器中的佼佼者,瑞芯微RK3568J處理器可實(shí)現(xiàn)三屏
    發(fā)表于 07-17 10:53

    全志T3+Logos FPGA開發(fā)板——雙屏開發(fā)案例

    案例功能:實(shí)現(xiàn)TFT LCD(主屏) + CVBS OUT(副屏)雙屏功能。程序通過指定參數(shù)不同類型的顯示屏
    發(fā)表于 07-12 17:27

    全志T527板-米爾專為智慧設(shè)計(jì)的主板

    MYD-LT527-SX板全志T527,八核A55,多屏,專為智慧
    發(fā)表于 06-17 18:27 ?3次下載

    國產(chǎn)芯,米爾基于全志T527的主板及工業(yè)微型控制器

    的企業(yè)客戶,為客戶提供了快速開發(fā)、測試和原型驗(yàn)證的平臺。 2、MYD-LT527-SX板:多屏
    發(fā)表于 06-14 17:26

    廣和通智能模組助力雙屏技術(shù)革新

    隨著物聯(lián)網(wǎng)設(shè)備日常生活和工作中的普及,用戶對于多屏的需求愈發(fā)強(qiáng)烈。特別是在車聯(lián)網(wǎng)和智慧零售領(lǐng)域,雙屏應(yīng)用的需求日益增長。
    的頭像 發(fā)表于 05-24 10:31 ?463次閱讀

    輕輕松松RK356X Android11適配ML307R Cat.1模組

    的RK3568行業(yè)主板,預(yù)計(jì)6月上旬正式架售賣。該行業(yè)主板主板具有以下特點(diǎn):豐富屏接口:?持三屏
    的頭像 發(fā)表于 05-16 08:32 ?1244次閱讀
    輕輕松松<b class='flag-5'>在</b>RK356X <b class='flag-5'>Android</b>11適配ML307R Cat.1模組

    全志A527廣告機(jī)安卓主板 自助終端主板

    AI-830主板是一款專為智慧和智能終端系統(tǒng)設(shè)計(jì)的高性能主板。它搭載了全志A527 八核芯片,芯片自帶2.0T算力NPU,搭載
    的頭像 發(fā)表于 04-15 15:55 ?1670次閱讀
    全志A527<b class='flag-5'>商</b><b class='flag-5'>顯</b>廣告機(jī)安卓<b class='flag-5'>主板</b> 自助終端<b class='flag-5'>主板</b>

    三屏案例分享,基于全國產(chǎn)RK3568J工業(yè)平臺!

    。 ? 在過去,由于性能、成本、技術(shù)等諸多問題,許多工業(yè)處理器并不支持多屏。但隨著工業(yè)處理器尤其是國產(chǎn)工業(yè)處理器的不斷迭代升級,實(shí)現(xiàn)多屏
    的頭像 發(fā)表于 02-27 14:09 ?707次閱讀
    三屏<b class='flag-5'>異</b><b class='flag-5'>顯</b>案例分享,基于全國產(chǎn)RK<b class='flag-5'>3568</b>J工業(yè)平臺!

    M3568多屏同應(yīng)用實(shí)例

    M3568-T核心板多屏同技術(shù),提升效率與安全性。車載領(lǐng)域實(shí)現(xiàn)安全駕駛與娛樂并行;工業(yè)領(lǐng)
    的頭像 發(fā)表于 02-20 08:23 ?626次閱讀
    M<b class='flag-5'>3568</b>多屏同<b class='flag-5'>顯</b><b class='flag-5'>異</b><b class='flag-5'>顯</b>應(yīng)用實(shí)例

    TLT507- 雙屏方案演示

    TLT507- 雙屏方案演示
    的頭像 發(fā)表于 01-26 11:08 ?1197次閱讀
    TLT507- <b class='flag-5'>雙屏</b><b class='flag-5'>異</b><b class='flag-5'>顯</b>方案演示

    TL3588--多屏同、方案演示.

    TL3588--多屏同、方案演示.
    的頭像 發(fā)表于 01-24 14:57 ?739次閱讀
    TL3588--多屏同<b class='flag-5'>顯</b>、<b class='flag-5'>異</b><b class='flag-5'>顯</b>方案演示.