前言
由于Scratch官方说的不是很清楚,导致我光编译就折腾了好久,问别人也没人肯帮我。摸索了好多天才能使用gradle编译,用sublime修改代码,没办法Debug,在这种条件下硬是写了不少代码。
后来渐渐熟悉之后也顺利使用Flash Builder来开发调试,方便了很多。分享一波经验,避免浪费大家太多的时间。
附
-
Flash Builder 下载和破解方法
https://www.213.name/archives/1234
-
二次开发流程
scratch-flash是离线版的,官方的api并没有开源,如果要和服务器交互的话,需要分析请求然后自己写api来模拟。二次开发过程参考这篇文章
https://www.213.name/archives/1211
-
scratch开发者群,相关资源及软件可在群内下载
244051003 (已满)
244050817
使用Flash Builder开发
- 下载devolpe版的Scratch-flash源码:https://github.com/LLK/scratch-flash
- 安装Flash Builder 4
- 下载flex SDK 4.6
- 新建flex项目,项目地址指向源码的根目录(不是src),应用程序类型选择WEB,
- 配置SDK(如果导入时没有配置),项目属性 -> Flex编译器 -> 配置Flex SDK -> 添加
- 导入源码中的libs中的swc库(如果没有自动导入的话)
- 项目->属性->Flex模块,添加一个模块,源代码选择src\Scratch.as,输出scratch.swf,选择不优化
-
编译器参数:
-locale zh_CN -swf-version=19 -default-size=800,600 -define+=SCRATCH::allow3d,false -define+=SCRATCH::revision,\'e267f37\'
-
其他配置:
框架链接选择“合并到代码中”
取消勾选验证RSL摘要
- 项目/构建项目,然后去bin-debug文件夹找构建好的scratch.swf文件就可以运行了(不是点运行)
- 如果需要debug调试的话需要安装Adobe Flash Player Debugger版本,请自行搜索下载
使用gradle编译
** 注:因官方的某个源挂了,此方法可能不可用 **
- 安装gradle,配置环境变量
- 在源码目录下执行.\gradlew build,Linux下执行./gradlew build
-
注:Linux下应该可以直接编译成功,但windows下可能会报错,提示缺少osmf.swc库文件
解决方法是在别的SDK中复制过来,gradle默认SDK目录在:C:\Users\Administrator.gradle\gradleFx\sdks\下的某个文件夹
将osmf.swc复制到SDK目录下的frameworks\libs文件夹中即可
-
如果sdks下没有文件夹的话,那么
C:\Users\Administrator.gradle\caches\modules-2\files-2.1\org.apache\apache-flex-sdk\4.15.0
这里有个sdk的压缩包,将osmf.swc放到压缩包里的frameworks\libs也可以
- 由于gradle第一次运行时会从国外下载很多东西,建议挂个Vpn下载
** Tip: **
- 如果IDE很卡的话,关闭“自动构建”即可
- 群文件中已上传所有的相关文件
- 如果还是编译不好的话,可以进群下载配置好的项目~