开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 161372|回复: 1157
收起左侧

[易源码分享] 【!重磅!】EA-Code解析(EA极光 - 中文安卓开发工具)开源

    [复制链接]
发表于 2018-11-10 09:57:22 | 显示全部楼层 |阅读模式   广东省揭阳市
分享源码
界面截图:
是否带模块: 调用了模块
备注说明: -
本帖最后由 项目部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 里面包括了androidsdk
  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. 分析阅读源码
针对界面布局、窗口组件使用、位置等基本知识,这里不进行说明,只说一些复杂的实现过程。
编译过程,编译开始时,将开始分析源码,将源码进行处理,处理的过程实际上是作为了一种替换,将原本写好的代码,根据JAVAAndroid的规范进行替换,将代码替换为符合标准的java代码,之后调用java编译器进行编译。最终生成文件。编译过程需要设计到实际的Android开发,故如果想要进一步了解过程,需要具备一定的Android开发能力。
根据例程,我们可以学习到一个简单的程序的开发。


如果说直接研究编译过程太过复杂的话,我们完全可以学习他软件实现的流程,代码编写的规范,学习到如何写代码才能完整的构建出这样一个大型的程序。
例程程序中如何使用变量,如何管理众多的程序集和全局变量,如何分类各种子程序,类的方法,如何组织一个大型源码和写代码同样重要。
这里推荐大家去看一下如何编写支持库以及支持库和主程序进行通信,调用。 实际上来讲,这个支持库就是一个dll(易语言的也是),通过一些固定不变的接口(子程序)来返回这个支持库的信息,信息可以包括,支持库名,支持库命令数等,这样主程序就可以知道支持库的信息,并且针对不同的信息,不同的内容作不同的处理。
重要的是在编译的时候,能够将命令进行转换,分离,然后将命令与要生成的代码结合,最终生成为一个可用的文件,这里面的玄机是真正需要我们了解和学习的。

实际上,返回支持库信息的方法就是上面图片所示,将支持库内提供的命令,命令的说明都通过一个数据类型传递给主程序,之后主程序进行调用操作。
在载入支持库的时候,正是读取对应的几个接口(子程序)来得到支持库的一些信息,命令。在编译时根据GetJar和GetLib获取执行和依赖的其他文件,最终完成编译。
在这里,支持库实际上做到了一个桥接,将Jar与EA-Code连接了起来。

代码图片:

窗口设计器,项目管理,右侧组件列表

编译过程:




下载地址请回复后查看:
链接:https://pan.baidu.com/s/1PvK8_YetZ8b4N8Ray3JHdA
提取码:q2bu  

备用下载地址查看
https://share.weiyun.com/5DWKLnE

点评

我猜这个帖子会火....   广东省揭阳市  发表于 2018-11-19 20:13
作者好汉,搞点视频教程如何?   河北省石家庄市  发表于 2018-11-11 19:08
这是精易论坛 官方出版的吗???   广东省深圳市  发表于 2018-11-10 23:36
我猜这个帖子会火....   广东省揭阳市  发表于 2018-11-10 11:42

评分

参与人数 57好评 +43 精币 +104 荣誉 +1 收起 理由
yyqingying + 1 + 2 支持开源~!感谢分享
1500150300 + 1 + 2 支持开源~!感谢分享
‘CC + 1 支持开源~!感谢分享
茶白 + 1 + 2 感谢分享,很给力!~
nulife + 1 支持开源~!感谢分享
wp0369 + 1 + 1 支持开源~!感谢分享
雾雾雾 + 1 支持开源~!感谢分享
斩月Aphack + 1 + 3 开源 是不是就没有以后了
易莫名 + 1 + 3 感谢分享,很给力!~
末年的笑容 + 1 + 2 新技能已get√
小码人 + 1 我想问下为啥不持续更新下去了呢
mobilephone + 1 支持开源~!感谢分享
641288318 + 1 感谢分享,很给力!~
xifengjt + 1 支持开源~!感谢分享
不败的意志 + 1 支持开源~!感谢分享
178826559 + 1 + 2 感谢分享,很给力!~
新纪元 + 2 感谢发布原创作品,精易因你更精彩!
铅笔刀 + 1 + 3 新技能已get√
zidiao500 + 1 + 2 支持开源~!感谢分享
HUC静辰 + 1 支持开源~!感谢分享
aismy + 1 + 4 支持开源~!感谢分享
zhangjun1314 + 1 + 2 支持开源~!感谢分享
wyd134 + 1 + 1 感谢分享,很给力!~
ltr0030 + 1 + 2 支持开源~!感谢分享
wangyunfei + 1 + 4 支持开源~!感谢分享
深圳梦 + 1 + 2 支持开源~!感谢分享
tz4590391 + 1 + 2 这么厉害!必须给个红包鼓励下~
jiagu + 1 支持开源~!感谢分享
zxw445 + 1 + 2 此处应该有鼓励~
kflizcst + 1 支持开源~!感谢分享
ffsfdsa + 1 + 2 支持开源~!感谢分享
无序熵增 + 1 支持开源~!感谢分享
从你的世界路过 + 1 + 2 支持开源~!感谢分享
荭枫 + 1 支持开源~!感谢分享
客服部·风末 + 1 + 5 + 1 支持开源~!感谢分享
国王软件 + 1 + 2 感谢分享,很给力!~
恰似清风吹过 + 1 感谢发布原创作品,精易因你更精彩!
搞事 + 1 支持开源~!感谢分享
峰生水起之林 + 1 + 1 感谢分享,很给力!~
luoran + 1 感谢分享,很给力!~
勾栏听曲 + 1 + 2 貌似会火,占个位置先
a4846260 + 1 支持开源~!感谢分享
唯美主义 + 1 + 3 感谢分享,很给力!~
kyo9766 + 1 + 2 小白看着比火山好多了..........
1284178966 + 1 + 2 感谢发布原创作品,精易因你更精彩!
LvZHuang + 1 + 1 新技能已get√
陈大奶么么哒 + 1 + 3 支持开源~!感谢分享
qq692172929 + 1 + 2 很好很强悍,坚持下去哦~
songue + 1 + 2 感谢分享,很给力!~
夜的静night + 1 + 2 6666
星空Allstar + 1 + 1 支持开源~!感谢分享
1301ok + 1 新技能已get√
zl2017 + 1 + 3 支持开源~!感谢分享
Cand + 1 + 5 讨厌的项目部002又来骗好评了
一粒红尘 + 1 + 2 支持开源~!感谢分享
揰掵佲 + 1 + 4 新技能已get√
DDSGXQ + 1 + 2 此处应该有奖励啊,666,终于发出来了

查看全部评分


本帖被以下淘专辑推荐:

结帖率:100% (6/6)

签到天数: 4 天

发表于 2022-11-19 20:42:03 高大上手机用户 | 显示全部楼层   江西省赣州市
插个眼,拿走了。
回复 支持 反对

使用道具 举报

发表于 2022-5-31 17:18:57 | 显示全部楼层   江苏省泰州市
小小心意,意思一下
回复 支持 反对

使用道具 举报

结帖率:100% (15/15)

签到天数: 18 天

发表于 2022-4-29 21:44:02 | 显示全部楼层   重庆市重庆市
感谢大佬无私分享
回复 支持 反对

使用道具 举报

结帖率:20% (1/5)
发表于 2021-10-14 19:45:30 | 显示全部楼层   辽宁省本溪市
EA安卓要是能兼容易语言的语法格式 就好了
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2021-9-2 19:23:31 | 显示全部楼层   江苏省苏州市
支持开源,感谢分享~!
回复 支持 反对

使用道具 举报

结帖率:0% (0/4)

签到天数: 7 天

发表于 2021-7-27 22:43:29 | 显示全部楼层   江苏省盐城市
源码有点残缺  只能单窗口 插入新窗口 上一个主窗口代码就消失了
回复 支持 反对

使用道具 举报

结帖率:25% (4/16)
发表于 2021-4-17 15:48:39 | 显示全部楼层   云南省楚雄彝族自治州
现在这个项目还活着吗?
回复 支持 反对

使用道具 举报

结帖率:100% (15/15)

签到天数: 18 天

发表于 2020-12-16 12:10:55 | 显示全部楼层   重庆市重庆市
感谢大佬无私分享
回复 支持 反对

使用道具 举报

结帖率:60% (9/15)

签到天数: 9 天

发表于 2020-9-12 21:14:24 | 显示全部楼层   河北省衡水市
支持开源~!感谢分享
回复 支持 反对

使用道具 举报

发表于 2019-12-20 16:46:52 | 显示全部楼层   广西壮族自治区南宁市
谢谢,好人啊,学习一下
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 诚聘英才| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 800073686,邮箱:800073686@b.qq.com
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表