本帖最后由 項目部002 于 2018-11-10 11:15 編輯
項目介紹: EA-Code是由業余愛好者編寫的一款:中文安卓app開發工具。 工具完全由易語言+jdk開發,目前版本是2.0版本。
亮點介紹: 1. 程序界面美觀,符合現代審美與軟件設計理念。 2. 支持支持庫開發編寫,支持庫開發同樣使用易語言,大大簡化了開發流程。 3. 界面設計可視化,所見即得的界面開發方式。 4. 提供較為完整說明文檔,即時幫助F1,代碼輸入提示。 5. 支持模擬器調試,能夠直接引用外部模擬器進行調試。 6. 豐富的組件,讓開發擁有更多可能。 7. 自帶例程,例程展示的一些基本操作。
技術實現:一.目錄結構說明 EA_20源碼文件,引用的模塊及模塊目錄 EA_20/SDK 里面包括了android的sdk。 EA_20/易語言支持庫Lib 是易語言支持庫的存放目錄。 EA_20\Extra_tools 擴展工具 EA_20\E4ACompiler 編譯的工具,包含易語言調用的源代碼 EA_20\example 一些提供的例程 EA_20\WorkPlace 工作區目錄,會隨工程創建 jdk6 jdk安裝包 Lib 工程源碼需要的易語言支持庫 Lib支持庫 EA編輯器(IDE)的支持庫 Lib支持庫/e/ 這里存的是支持庫對應Jar包的源碼 Mk 模塊集合 EA支持庫開發白皮書.htm 和 EA支持庫開發白皮書.files 開發說明文檔,包含了一些Java的說明以及支持庫FNE的開發文檔。 源碼使用說明:
首先需要安裝jdk運行環境,在目錄中已經包含了,jdk6
然后打開EA_20\EA.e,由于源碼中引用了沒有靜態庫的支持庫,所以源碼不支持靜態編譯,可以使用獨立編譯,將源碼編譯出來后,方可正常使用。調試模式下,由于易語言默認的調試目錄為臨時目錄,這回造成找不到文件的問題,所以不建議在調試模式下運行。
二.源碼技術說明:1. 源碼中大量使用了各種技術,由于程序本身就是一個完整的系統,所以整體源碼龐大,閱讀的復雜度也相對較高。閱讀源碼時應該先從模塊看起,看看都引用了哪些模塊,并且模塊都是做什么的,根據源碼、備注、調用方法來確定模塊中的命令是做什么的,逐個分析模塊后,再進行主程序源碼的查看。 ![]()
2. 同樣的,源碼中引用了很多支持庫,這些支持庫與模塊間相互配合,是整個軟件的重要組成部分。 除核心庫外,程序還引用了:許多支持庫。所以當充分了解支持庫之后,再看程序代碼,就能事半功倍了。 ![]()
3. 分析閱讀源碼 針對界面布局、窗口組件使用、位置等基本知識,這里不進行說明,只說一些復雜的實現過程。 編譯過程,編譯開始時,將開始分析源碼,將源碼進行處理,處理的過程實際上是作為了一種替換,將原本寫好的代碼,根據JAVA與Android的規范進行替換,將代碼替換為符合標準的java代碼,之后調用java編譯器進行編譯。最終生成文件。編譯過程需要設計到實際的Android開發,故如果想要進一步了解過程,需要具備一定的Android開發能力。 根據例程,我們可以學習到一個簡單的程序的開發。 ![]()
如果說直接研究編譯過程太過復雜的話,我們完全可以學習他軟件實現的流程,代碼編寫的規范,學習到如何寫代碼才能完整的構建出這樣一個大型的程序。
例程程序中如何使用變量,如何管理眾多的程序集和全局變量,如何分類各種子程序,類的方法,如何組織一個大型源碼和寫代碼同樣重要。
這里推薦大家去看一下如何編寫支持庫以及支持庫和主程序進行通信,調用。 實際上來講,這個支持庫就是一個dll(易語言的也是),通過一些固定不變的接口(子程序)來返回這個支持庫的信息,信息可以包括,支持庫名,支持庫命令數等,這樣主程序就可以知道支持庫的信息,并且針對不同的信息,不同的內容作不同的處理。
重要的是在編譯的時候,能夠將命令進行轉換,分離,然后將命令與要生成的代碼結合,最終生成為一個可用的文件,這里面的玄機是真正需要我們了解和學習的。
![]()
實際上,返回支持庫信息的方法就是上面圖片所示,將支持庫內提供的命令,命令的說明都通過一個數據類型傳遞給主程序,之后主程序進行調用操作。
在載入支持庫的時候,正是讀取對應的幾個接口(子程序)來得到支持庫的一些信息,命令。在編譯時根據GetJar和GetLib獲取執行和依賴的其他文件,最終完成編譯。
在這里,支持庫實際上做到了一個橋接,將Jar與EA-Code連接了起來。
代碼圖片:
![]()
窗口設計器,項目管理,右側組件列表
![]()
編譯過程:
![]()
下載地址請回復后查看:
鏈接:https://pan.baidu.com/s/1PvK8_YetZ8b4N8Ray3JHdA
提取碼:q2bu
備用下載地址查看
https://share.weiyun.com/5DWKLnE |