精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

一種為 Linux ARM 設備構建跨平臺 UI 的新方法

系統(tǒng) Linux
AndroidXML 和 TotalCross 的運用為樹莓派和其他設備創(chuàng)建 UI 提供了更簡單的方法。

[[382113]]

AndroidXML 和 TotalCross 的運用為樹莓派和其他設備創(chuàng)建 UI 提供了更簡單的方法。

為應用程序創(chuàng)建良好的用戶體驗(UX)是一項艱巨的任務,尤其是在開發(fā)嵌入式應用程序時。今天,有兩種圖形用戶界面(GUI)工具通常用于開發(fā)嵌入式軟件:它們要么涉及復雜的技術,要么非常昂貴。

然而,我們已經(jīng)創(chuàng)建了一個概念驗證(PoC),它提供了一種新的方法來使用現(xiàn)有的、成熟的工具為運行在桌面、移動、嵌入式設備和低功耗 ARM 設備上的應用程序構建用戶界面(UI)。我們的方法是使用 Android Studio 繪制 UI;使用 TotalCross 在設備上呈現(xiàn) Android XML;采用被稱為 KnowCode 的新 TotalCross API;以及使用 樹莓派 4 來執(zhí)行應用程序。

選擇 Android Studio

可以使用 TotalCross API 為應用程序構建一個美觀的響應式用戶體驗,但是在 Android Studio 中創(chuàng)建 UI 縮短了制作原型和實際應用程序之間的時間。

有很多工具可以用來為應用程序構建 UI,但是 Android Studio 是全世界開發(fā)者最常使用的工具。除了它被大量采用以外,這個工具的使用也非常直觀,而且它對于創(chuàng)建簡單和復雜的應用程序都非常強大。在我看來,唯一的缺點是使用該工具所需的計算機性能,它比其他集成開發(fā)環(huán)境 (IDE) 如 VSCode 或其開源替代方案 VSCodium 要龐大得多。

通過思考這些問題,我們創(chuàng)建了一個概念驗證,使用 Android Studio 繪制 UI,并使用 TotalCross 直接在設備上運行 AndroidXML。

構建 UI

對于我們的 PoC,我們想創(chuàng)建一個家用電器應用程序來控制溫度和其他東西,并在 Linux ARM 設備上運行。

 

Home appliance application to control thermostat

我們想為樹莓派開發(fā)我們的應用程序,所以我們使用 Android 的 ConstraintLayout 來構建 848x480(樹莓派的分辨率)的固定屏幕大小的 UI,不過你可以用其他布局構建響應性 UI。

Android XML 為 UI 創(chuàng)建增加了很多靈活性,使得為應用程序構建豐富的用戶體驗變得容易。在下面的 XML 中,我們使用了兩個主要組件:ImageView 和 TextView

  1. <ImageView
  2. android:id="@+id/imageView6"
  3. android:layout_width="273dp"
  4. android:layout_height="291dp"
  5. android:background="@drawable/Casa"
  6. tools:layout_editor_absoluteX="109dp"
  7. tools:layout_editor_absoluteY="95dp" />
  8. <TextView
  9. android:id="@+id/insideTempEdit"
  10. android:layout_width="94dp"
  11. android:layout_height="92dp"
  12. android:background="#F5F5F5"
  13. android:text="20"
  14. android:textAlignment="center"
  15. android:gravity="center"
  16. android:textColor="#000000"
  17. android:textSize="67dp"
  18. android:textStyle="bold"
  19. tools:layout_editor_absoluteX="196dp"
  20. tools:layout_editor_absoluteY="246dp" />

TextView 元素用于向用戶顯示一些數(shù)據(jù),比如建筑物內的溫度。大多數(shù) ImageView 都用作用戶與 UI 交互的按鈕,但它們也需要實現(xiàn)屏幕上組件提供的事件。

用 TotalCross 整合

這個 PoC 中的第二項技術是 TotalCross。我們不想在設備上使用 Android 的任何東西,因為:

1。我們的目標是為 Linux ARM 提供一個出色的 UI。 2。我們希望在設備上實現(xiàn)低占用。 3。我們希望應用程序在低計算能力的低端硬件設備上運行(例如,沒有 GPU、 低 RAM 等)。

首先,我們使用 VSCode 插件 創(chuàng)建了一個空的 TotalCross 項目。接下來,我們保存了 drawable 文件夾中的圖像副本和 xml 文件夾中的 Android XML 文件副本,這兩個文件夾都位于 resources 文件夾中:

 

Home Appliance file structure

為了使用 TotalCross 模擬器運行 XML 文件,我們添加了一個名為 KnowCode 的新 TotalCross API 和一個主窗口來加載 XML。下面的代碼使用 API 加載和呈現(xiàn) XML:

  1. public void initUI() {
  2.     XmlScreenAbstractLayout xmlCont = XmlScreenFactory.create("xml / homeApplianceXML.xml");
  3.     swap(xmlCont);
  4. }

就這樣!只需兩個命令,我們就可以使用 TotalCross 運行 Android XML 文件。以下是 XML 如何在 TotalCross 的模擬器上執(zhí)行:

 

TotalCross simulator running temperature application

完成這個 PoC 還有兩件事要做:添加一些事件來提供用戶交互,并在樹莓派上運行它。

添加事件

KnowCode API 提供了一種通過 ID(getControlByID) 獲取 XML 元素并更改其行為的方法,如添加事件、更改可見性等。

例如,為了使用戶能夠改變家中或其他建筑物的溫度,我們在 UI 底部放置了加號和減號按鈕,并在每次單擊按鈕時都會出現(xiàn)“單擊”事件,使溫度升高或降低一度:

  1. Button plus = (Button) xmlCont.getControlByID("@+id/plus");
  2. Label insideTempLabel = (Label) xmlCont.getControlByID("@+id/insideTempLabel");
  3. plus.addPressListener(new PressListener() {
  4. @Override
  5. public void controlPressed(ControlEvent e) {
  6. try {
  7. String tempString = insideTempLabel.getText();
  8. int temp;
  9. temp = Convert.toInt(tempString);
  10. insideTempLabel.setText(Convert.toString(++temp));
  11. } catch (InvalidNumberException e1) {
  12. e1.printStackTrace();
  13. }
  14. }
  15. });

在樹莓派 4 上測試

最后一步!我們在一臺設備上運行了應用程序并檢查了結果。我們只需要打包應用程序并在目標設備上部署和運行它。VNC 也可用于檢查設備上的應用程序。

整個應用程序,包括資源(圖像等)、Android XML、TotalCross 和 Knowcode API,在 Linux ARM 上大約是 8MB。

下面是應用程序的演示:

 

Application demo

在本例中,該應用程序僅為 Linux ARM 打包,但同一應用程序可以作為 Linux 桌面應用程序運行,在Android 設備 、Windows、windows CE 甚至 iOS 上運行。

所有示例源代碼和項目都可以在 HomeApplianceXML GitHub 存儲庫中找到。

現(xiàn)有工具的新玩法

為嵌入式應用程序創(chuàng)建 GUI 并不需要像現(xiàn)在這樣困難。這種概念證明為如何輕松地完成這項任務提供了新的視角,不僅適用于嵌入式系統(tǒng),而且適用于所有主要的操作系統(tǒng),所有這些系統(tǒng)都使用相同的代碼庫。

我們的目標不是為設計人員或開發(fā)人員創(chuàng)建一個新的工具來構建 UI 應用程序;我們的目標是為使用現(xiàn)有的最佳工具提供新的玩法。 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2022-04-20 08:00:00

深度學習數(shù)據(jù)集Hub

2022-11-22 11:18:38

Java虛擬線程

2022-03-10 12:16:14

側信道內存攻擊網(wǎng)絡攻擊

2016-12-26 18:25:29

Android應用進程存活率

2016-12-26 18:39:32

Android應用進程存活率

2018-10-07 07:00:59

2023-08-08 11:28:06

企業(yè)首席執(zhí)行官

2021-09-26 10:49:27

計算機互聯(lián)網(wǎng) 技術

2024-11-05 08:19:11

深度學習神經(jīng)網(wǎng)絡機器學習

2015-08-21 09:14:40

大數(shù)據(jù)

2023-07-24 14:42:23

2022-05-26 10:57:51

機器人人工智能

2021-09-27 10:12:42

欺騙防御rMTD網(wǎng)絡攻擊

2019-07-12 13:50:36

物聯(lián)網(wǎng)大數(shù)據(jù)安全

2022-07-07 10:47:16

IngressKubernetes

2010-04-01 09:30:57

2010-06-18 09:48:22

2025-03-26 08:00:00

2021-04-26 23:31:49

黑客漏洞網(wǎng)絡攻擊

2016-01-15 10:42:12

點贊
收藏

51CTO技術棧公眾號

欧美bbbbb性bbbbb视频| 大陆av在线播放| 国产又粗又猛视频免费| 欧美日韩岛国| 日韩精品中文字幕视频在线| 三上悠亚在线一区二区| 亚洲七七久久综合桃花剧情介绍| 成人av网站免费| 国产精品草莓在线免费观看 | 成人在线免费| 亚洲精品国产第一综合99久久 | 天天干天天av| 24小时免费看片在线观看| 国产性天天综合网| 成人在线观看网址| 中文字幕 亚洲视频| 伊人精品视频| 久久久91精品国产| 素人fc2av清纯18岁| 亚洲2区在线| 欧美亚洲国产一区二区三区 | 欧美mv和日韩mv的网站| 亚洲福利精品视频| а√天堂中文资源在线bt| 国产精品不卡在线观看| 欧美精品一区二区三区四区五区| xxxx国产精品| 欧美96一区二区免费视频| 久久乐国产精品| 亚洲国产精品免费在线观看| 欧美三级美国一级| 亚洲精品久久久久久下一站 | 亚洲欧美一二三区| 亚洲日本黄色| 欧美日本精品在线| 国产人与禽zoz0性伦| 国产精品日韩精品中文字幕| 亚洲国产成人爱av在线播放| 国产大学生av| 久久伊人精品| 欧美一区永久视频免费观看| 男女视频在线看| 香蕉成人影院| 欧洲精品视频在线观看| 国产成人综合一区| 成人欧美magnet| 欧美日韩中国免费专区在线看| 精品人妻人人做人人爽| 午夜伦理大片视频在线观看| 亚洲色图丝袜美腿| 四虎免费在线观看视频| 黄视频在线观看网站| 国产精品成人一区二区三区夜夜夜 | 久久久亚洲精品石原莉奈| 精品国产一区二区三区免费| 殴美一级特黄aaaaaa| 成人18视频在线播放| 懂色av一区二区三区在线播放| 99热在线只有精品| 国产精品99精品久久免费| 91精品久久久久久蜜桃| 亚洲国产视频一区二区三区| 国产69精品久久久久毛片| 97超碰资源| 亚洲乱码在线观看| caoporen国产精品视频| 久久国产精品久久| 牛牛热在线视频| 国产欧美日韩三区| 亚洲欧洲精品在线| 免费a在线看| 亚洲激情五月婷婷| 激情视频小说图片| 55av亚洲| 欧美午夜一区二区| 红桃视频 国产| 试看120秒一区二区三区| 亚洲精品一区二区三区99| 粉嫩av懂色av蜜臀av分享| 伊人春色精品| 色噜噜狠狠狠综合曰曰曰| 欧美精品乱码视频一二专区| 国产日韩免费| 国产美女被下药99| 丰满人妻熟女aⅴ一区| 91视频一区二区三区| 日韩一区二区电影在线观看| 黄色网页在线免费观看| 性欧美疯狂xxxxbbbb| 日韩一级在线免费观看| 福利视频亚洲| 精品国产成人在线影院 | 亚洲精品一区二区三区区别 | 国产主播av在线| 中文字幕亚洲综合久久五月天色无吗''| 色综合色综合久久综合频道88| 二区视频在线观看| 国产在线视视频有精品| 精品一区二区三区视频日产| 欧美成人视屏| 偷拍一区二区三区四区| a在线观看免费视频| 国产suv精品一区| 色yeye香蕉凹凸一区二区av| 国产无遮挡裸体免费视频| 日韩成人免费电影| 国产一级二级三级精品| 黄色网址在线免费观看| 色综合天天综合网天天狠天天| 在线视频观看91| 日韩av网站在线免费观看| 最近2019年日本中文免费字幕| 久久久久亚洲AV| 毛片不卡一区二区| 蜜桃av噜噜一区二区三| 最爽无遮挡行房视频在线| 色狠狠桃花综合| 国产精品久久久久久在线观看| 成人中文在线| 2024亚洲男人天堂| 高清毛片aaaaaaaaa片| 国产精品日日摸夜夜摸av| 日本www在线播放| 日韩一区网站| 日韩在线观看成人| 日韩黄色片网站| 91免费看视频| 免费一级特黄特色毛片久久看| 国产精品国产亚洲精品| 国产一区二区三区久久精品 | 日本aa在线| 3d成人动漫网站| 久操视频在线观看免费| 久久三级福利| 欧美日韩一区二区视频在线| 国产美女精品写真福利视频| 精品美女在线观看| 四虎永久免费在线| 久久精品国产77777蜜臀| 偷拍视频一区二区| 欧美成人影院| 亚洲色图狂野欧美| 亚洲熟女综合色一区二区三区| www.欧美.com| av之家在线观看| 欧美国产极品| 欧美在线视频免费播放| 亚洲色偷精品一区二区三区| 黄色精品一区二区| 久久久国产精品无码| 99在线观看免费视频精品观看| 99久久综合狠狠综合久久止| 在线你懂的视频| 日韩欧美自拍偷拍| 久久久久久国产精品免费播放| 久久99精品国产麻豆不卡| 亚洲精品一区二区三区樱花| 青青热久免费精品视频在线18| 亚洲网站在线观看| 午夜一区二区三区四区| 国产精品久久久久久久第一福利| 亚洲精品久久久久久宅男| 99精品视频在线观看播放| 成人写真视频福利网| 伊人影院蕉久影院在线播放| 欧美xxxx在线观看| 人人干人人干人人干| www成人在线观看| 黄色av免费在线播放| 成人在线免费视频观看| 91免费在线视频网站| 欧美videossex| 日韩精品有码在线观看| 亚洲精品一区二三区| 最近日韩中文字幕| 天堂va欧美va亚洲va老司机| 99热在线精品观看| 日韩欧美视频第二区| 亚洲色图图片| 91精品国产91久久| 国产在线视频网| 91精品一区二区三区久久久久久| 麻豆一区产品精品蜜桃的特点| 99精品欧美一区| wwwwxxxx日韩| 欧美精品三区| 日韩电影大全在线观看| 亚洲18在线| 97人洗澡人人免费公开视频碰碰碰| 日本高清中文字幕二区在线| 欧美精品v日韩精品v韩国精品v| 18精品爽视频在线观看| 久久久久久影视| 91丨porny丨九色| 久久激情综合| 免费看日b视频| 国产aⅴ精品一区二区三区久久| 国产在线观看精品| 成人一级福利| 久久久精品视频在线观看| 亚洲欧洲精品视频| 欧美一区二区三区性视频| 69国产精品视频免费观看| 亚洲精品免费看| 亚洲第一综合网| jiyouzz国产精品久久| 亚洲一区二区福利视频| 亚洲视频播放| 青青在线视频免费观看| 欧美日韩色图| julia一区二区三区中文字幕| 中文字幕一区二区人妻在线不卡| 免费久久精品视频| 国产高清av在线播放| 日韩精品诱惑一区?区三区| 国产精品免费一区二区三区在线观看 | 91一区二区三区在线观看| 一区二区在线免费看| 99xxxx成人网| 在线观看三级网站| 日韩精品一区二区久久| 欧美乱偷一区二区三区在线| 亚洲图色一区二区三区| 国产精品永久免费观看| 欧美电影免费观看| 91国内在线视频| 日本高清在线观看| 久久精品99国产精品酒店日本| 天堂а√在线8种子蜜桃视频 | 色综合色综合| 日韩电影天堂视频一区二区| 另类尿喷潮videofree| 99久久精品久久久久久ai换脸| 日韩护士脚交太爽了| 国产精品大陆在线观看| jizz内谢中国亚洲jizz| 97国产精品视频| 后进极品白嫩翘臀在线播放| 欧美另类精品xxxx孕妇| av中文字幕在线观看| 日韩在线观看视频免费| 97电影在线| 丝袜情趣国产精品| eeuss影院在线播放| 国产午夜精品全部视频播放| 国产永久免费高清在线观看视频| 亚洲欧美在线免费| 国内在线免费高清视频| 亚洲午夜精品久久久久久久久久久久| 日本一区二区三区在线观看视频| 日韩av一区在线| 亚洲av成人无码久久精品老人| 亚洲国产欧美精品| 少妇一区二区三区四区| 日韩久久免费电影| 欧美日韩在线中文字幕| 亚洲午夜小视频| a天堂中文在线88| 久久久国产视频91| 曰本三级在线| 欧美精品久久久久久久| 国产福利片在线观看| 5278欧美一区二区三区| 成人黄色免费短视频| 国产精品免费网站| 在线视频成人| 国产高清自拍一区| 你懂的在线观看一区二区| 欧美日韩另类丝袜其他| 不卡av一区二区| 中文字幕一区二区三区四区五区| 亚洲综合婷婷| 日日碰狠狠添天天爽超碰97| 久久男女视频| 国产三级三级看三级| 国产福利不卡视频| 国产精品无码电影| 欧美国产日本视频| 四虎精品免费视频| 午夜久久久久久久久久一区二区| 久久精品视频1| 欧美日韩精品一区二区在线播放| 国产亲伦免费视频播放| 亚洲精品第一国产综合精品| avtt亚洲| 欧美激情va永久在线播放| 手机在线观看av| 国产精品自产拍在线观| www.国产精品一区| 日韩一二三区不卡在线视频| 欧美 亚欧 日韩视频在线| 国产精品秘入口18禁麻豆免会员| 欧美a级一区二区| 又黄又色的网站| 国产精品欧美经典| 国产一级在线观看视频| 欧美午夜视频网站| 天天操天天干天天干| www国产亚洲精品久久网站| mm视频在线视频| 国产精品久久中文| 国产伦精品一区二区三区免费优势| 欧美亚洲丝袜| 好吊日精品视频| 日本肉体xxxx裸体xxx免费| 成人激情小说网站| 永久免费看片视频教学| 色综合久久久久综合体桃花网| www.天堂在线| 中文字幕视频在线免费欧美日韩综合在线看 | 毛片在线视频播放| 国模一区二区三区白浆 | 亚洲色大成网站www久久九九| 日本中文字幕第一页| 欧美成人精品二区三区99精品| 韩国免费在线视频| 69av在线视频| 1313精品午夜理伦电影| 亚洲一区二区三区涩| 亚洲免费影视| 加勒比精品视频| 一区二区三区中文字幕精品精品| 美女黄页在线观看| 亚洲精品视频免费| av资源在线| 国产91aaa| 欧美黄色精品| 欧美精品 - 色网| 国产精品久久看| 成人免费一级片| 日韩精品视频在线播放| 国内在线免费视频| 高清国语自产拍免费一区二区三区| 午夜影院欧美| 国产一区二区在线观看免费视频| 国产精品欧美综合在线| 成人免费一级片| 国产亚洲激情视频在线| 成人福利视频| 青青草原亚洲| 日韩av网站在线观看| 色婷婷av777| 黑人巨大精品欧美一区二区免费 | www.久久99| 中文字幕一区二区三区四区五区 | 国产中文字幕亚洲| 久久免费大视频| 女人高潮一级片| 18涩涩午夜精品.www| 国产情侣一区二区| 不卡av在线播放| 欧一区二区三区| 大荫蒂性生交片| 成人福利电影精品一区二区在线观看| 欧美成人aaa片一区国产精品| 欧美一二三区精品| 黄网av在线| 久久国产精品 国产精品| 国产视频一区在线观看一区免费| 在线观看国产三级| 91久久人澡人人添人人爽欧美| 国产精品久久久久一区二区国产| 国产精品精品国产| 久久国产综合| 天天av天天操| 亚洲aⅴ怡春院| 日本天堂在线| 国产狼人综合免费视频| 欧美日韩第一区| 欧美熟妇精品黑人巨大一二三区| 欧美日韩亚洲网| 色影院视频在线| 成人毛片网站| 亚洲永久免费精品| 国产激情av在线| 日韩亚洲欧美综合| 美女91在线看| 五月天久久狠狠| 国产精品一卡二卡在线观看| 日韩经典在线观看| 亚洲最新av在线| 日韩精品一区二区三区中文字幕| 国产极品在线视频| 国产精品区一区二区三| 亚洲av无码国产精品永久一区| 91精品国产色综合久久不卡98口 | 成人国产精品视频| 无码一区二区三区在线观看| 久久在线精品视频| 日韩精选在线| 午夜激情影院在线观看| 精品久久久久久亚洲国产300| 国产日本在线观看| 国产91精品一区二区绿帽| 美女国产精品| 最新一区二区三区| 亚洲日韩第一页| julia中文字幕一区二区99在线| 免费黄色一级网站| 亚洲一二三区不卡|