第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Kivy是如何做到跨平臺兼容的?

Kivy是如何做到跨平臺兼容的?

Smart貓小萌 2023-06-20 13:22:47
是什么讓 Kivy 能夠跨平臺兼容?換句話說,同一個Kivy源代碼如何在桌面、iOS、Android等多種硬件平臺上生成應(yīng)用程序?
查看完整描述

1 回答

?
MMMHUHU

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個贊

我想實(shí)現(xiàn)跨平臺兼容性有兩個關(guān)鍵的極端:

  1. 通過在每個平臺上以不同的方式實(shí)現(xiàn)事物,以便 Kivy 在每個平臺上運(yùn)行不同的代碼,但通過使輸出看起來相同來向用戶隱藏這種差異。

  2. 通過使用所有不同平臺支持的外部 API,Kivy 自己的代碼基本相同,平臺自己負(fù)責(zé)使其工作。

Kivy 兩者都有,但特別是所有繪圖都使用第二種類型的 OpenGL ES 2:Kivy 的所有繪圖邏輯在所有支持的平臺上幾乎相同。當(dāng)然還有其他類型,例如,在計(jì)算像素密度等顯示指標(biāo)時,Kivy 在每個平臺上使用不同的方法,但不會向用戶公開任何細(xì)節(jié)。

當(dāng)然,當(dāng)從整體上考慮事情時,事情要微妙得多。例如,Kivy 使用 SDL2 作為創(chuàng)建窗口、設(shè)置其大小/pos 處理暫停/恢復(fù)等的庫,因此 Kivy 的代碼在這里屬于第二種類型,因?yàn)樗诿總€平臺上都以相同的方式調(diào)用 SDL2。然而,SDL2 本身并不是平臺原生的,而是第一種類型,在不同的平臺上以不同的方式實(shí)現(xiàn)其 API,但在每個平臺上向 Kivy 公開相同的 API。


查看完整回答
反對 回復(fù) 2023-06-20
  • 1 回答
  • 0 關(guān)注
  • 205 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號