写了一个Android上用脚本和中文API编程的项目
https://github.com/MikaGuraN/HL4A --------- 2018/06/29 替作者更新 --------- 核心库, 无Android依赖: https://github.com/HL4A/hl4a-core Android工具库: https://github.com/HL4A/hl4a-android
就是汉化了一些JAVA API......
多谢分享! 很高兴看到大规模汉化API的实例. 看起来工作量很不小啊, 完成度也很高. 好奇请教一下项目由来?
@nobodxbodon 一开始想的是做一个在android上用js写app,结果变成了写工具类来着
请问有示例或者简单的使用说明吗? 一直没怎么关注Android开发, 一时不知如何上手.
@nobodxbodon 示例啊,看APK/script/index.js 这个是默认的界面,刚更新了一下
APK/script/index.js 是指https://github.com/MikaGuraN/HL4A/blob/master/HL4A/src/main/java/script/index.js 吧? 包含了这个帮助文件 才意识到这是真的"在Android上"写app. 感觉蛮独特. 之前看到过一些在手机上做某个编程语言的IDE的, 但第一次看到在手机环境里做app开发. 请教一下相比在pc上做开发, 有些什么优势呢? 这个库能否在pc上使用?
@nobodxbodon 不。没有什么优势,根本比不上什么eclipse,android studio,只是因为我没有电脑罢了。。。 有些可以吧。但是JVM和dalvik在动态加载的地方不一样,dalvik需要加载dex,总之很多需要改。不过我没有电脑蛤蛤,手机上都是AIDE在写代码
@nobodxbodon 不过比起电脑开发的确也有一点好处吧,现在已经更新了基本所有视图,准备写一个IDE,然后搞AAPT打包,我是故意不用任何xml布局的,所以打包只用aapt和signer就可以了
@MikaGuraN 多谢, 才了解Dalvik/JVM的区别. 手机上编写代码好像是个趋势, 毕竟现在手机屏够大, 性能也够.
我是故意不用任何xml布局的,所以打包只用aapt和signer就可以了
刚想到, 是不是还有个优势, 就是开发时不用模拟器运行或者下载到手机运行的一步, 就可以直接在手机上运行看效果? 另外, 调试上是否也会更方便(记得当时开adb什么的有不少小麻烦)?
另外, 请问有没有一个'hello world'式的入门文档? 如果没有, 不介意的话, 自愿写一篇介绍文(类似这个). 当然, 以在下的Android开发水平估计写出来会很业余就是了 :)
@nobodxbodon 好处也有,就是不用打包就能运行。用法的话,以后ide写好了会像aide一个一个教程加的,就是缺中文API的文档(类名.方法名,传入参数说明,返回值说明 ,如果你不嫌麻烦的话 可以帮个忙哦 23333
@nobodxbodon 调试也挺方便了,错误日志会自动保存,特别详细呢(js最详细
API文档感觉可以慢慢补, 毕竟有中文命名的优势, 会一目了然一些. 刚意识到"乐园之土.apk"是个演示app, 之前误以为是个IDE. 在IDE成型之前, 请问有方法可以编写app吗? 另外, 请问这个项目和https://github.com/damonkohler/sl4a 有关系吗?
@nobodxbodon 成型之前,只要修改script/index.js这个入口文件,然后编译就可以了。 和sl4a是没有关系的,js是rhino的js,lua是androlua-pro的lua,java是BeanShell的脚本
@nobodxbodon 当前界面.跳转界面("#index.js") 就是跳转到主页,同理的,可以在script/下加其他文件
@nobodxbodon 现在做了一个简单IDE和一个HelloWorld啦!
赞!神速啊 已经提交了吗?回头尝试下
下载了1.4.0版apk, 打开后复制了https://github.com/MikaGuraN/HL4A/blob/master/HL4A/src/main/assets/example.js 的内容黏贴到编辑器中, 选择"运行代码", 但没响应了. 然后系统报"乐园之土 isn't responding", wait两次也没反应.
系统是Android 7.0. LG stylo2.
@nobodxbodon 抱歉,我这里是4.4破手机,没有报错,请问有没有错误日志?在/sdcard/Android/data/h.android/错误日志 ?
@nobodxbodon 现在完善了一下IDE。顺便说一下建议QQ私聊,github这里不是经常看,
之前写了1.4.9版的试用经过, 暂时未在专栏发表. 如果各位组员对其有兴趣可以自行尝试.
据了解, 最新版本有了不少改进和重构. 功能上, 可以做到从JS源码编译生成可安装的apk文件:

以有限理解, 看到源码中比较显眼的部分如下:
- Java常用基础库的中文封装
- Android常用接口的中文封装
- JavaScript解释器的汉化(关键词部分, 比如function->函数, var->变量)
- 编辑器, 逐渐添加IDE功能, 如语法高亮等. 3和4也许不那么互相独立, 因为是基于SimpleJS开发.
个人打算从第一部分开始写文档和测试, 不仅因为这个项目中的所有其他源码都依赖它, 而且感觉在接口相对稳定之后, 比较理想的也许是将这个部分作一个独立项目, 因为它可以用于所有Java项目. @farteryhr @jeffreybaoshenlee 这里也牵涉到与https://github.com/program-in-chinese/overview/issues/54 类似的用词选择. 但由于它并不是对JDK标准库完全一对一的汉化, 因此自由度更大一些.
关于编译器汉化/IDE开发部分, @cleverdango @lightrabbit @swizl @htwx 有空探讨一下? 因为这是在手机平台上的IDE, 还有其特殊性, 也是以前没有讨论过的.
更新顶楼链接. 期待作者的一些进展介绍.
@nobodxbodon 这两天停更一下,等买的笔记本送到准备用java8重构一下。╮(‵▽′)╭
@nobodxbodon 关于SimpleJS 他是使用j2v8做脚本的,虽然快,但是调用java很不方便。我是把他的编辑器加入了Lua作者的高亮逻辑改的。
等买的笔记本送到准备用java8重构一下。╮(‵▽′)╭
@MikaGuraN 恭喜! 到时候说一下开发环境吧, 一致之后也方便团队开发. 还是想为核心库做点事情, 有可能的话.
新项目kio仍在寻找在Android上开发的最佳方案: https://github.com/MikaGuraNTK/kio-project/issues/2
后继有人。结绳安卓开发工具:
