通过反编译AndroidAPK实现ScratchJr角色个性化定制

来源 :课程教育研究·学法教法研究 | 被引量 : 0次 | 上传用户:a2422431
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘 要】本文基于Windows系统环境,以置入“小美”和“小德”卡通形象为例,介绍了通过反编译AndroidAPK实现ScratchJr角色个性化定制的全过程。
  【关键词】反编译Android APK;ScratchJr角色个性化定制
  【中图分类号】TP311.5       【文献标识码】A
  【文章编号】2095-3089(2019)11-0263-01
  【问题】
  ScratchJr是Scratch的姊妹版,是MIT媒体实验室的Scratch团队专为5-7岁儿童设计的图形化编程工具,可以让孩子像搭积木一样“堆叠”创造带交互性的故事、动画、游戏、音乐等,是小学低年级开展STEAM编程启蒙教育的不二选择。
  笔者在进行《基于ScratchJr的小学低年级STEAM编程课程构建研究》课题研究过程中,发现ScratchJr不允许导入外部图像资源扩充角色,只能选择资源库的有限角色使用,无法实现角色的随意个性化定制。虽然ScratchJr允许通过内置的绘图编辑器创造个性化角色,对于小学低年级学生来说,可以进行简单个性化角色的创造,但仍然不能满足低年级学生对于个性化角色的使用需求。
  因此,笔者通过多次实践,通过反编译Android APK实现了外部图像资源的导入,从而实现了ScratchJr角色的任意个性化定制,大大提升了教学过程中的场景搭建能力。
  通过上述方式,笔者的课题实现了以青岛崇德小学“小美”和“小德”卡通形象作为故事主人公,采用STEAM项目式案例教学,共有“预备”、“动画”和“故事”和“游戏”四个阶段性专题和10个案例项目,每个项目都以【创设情境】、【项目探究】、【极限挑战】和【创意激发】四个环节进行,对人文、数学、科学、信息等多个领域核心素养教育进行创新设计和有机整合,形成了一门充满校园文化承载的编程教育启蒙课程。
  【工具】
  1.APK文件逆向工程工具软件:apktool
  https://ibotpeaches.github.io/Apktool
  2.JDK内置APK签名工具:jarsigner
  3.JOSN编辑器:
  https://www.bejson.com/jsoneditoronline/
  4.PNG图片转SVG工具:
  https://www.bejson.com/convert/image_to_svg
  5.图像处理工具:Photoshop
  【步骤】
  1.下载ScratchJr APK文件。
  ScratchJr目前最新版本是1.2.4,可以通过百度搜索或访问ScratchJr官方网站(http://www.scratchjr.org)下载。
  〖XC23.JPG;%22%22〗
  2.访问Oracle网站,下载安装Java SDK,下一步我们会用到其内置的APK文件签名工具jarsigner。
  3.使用apktool反编译APK文件。
  访问github网站,下载 apktool.bat与apktool.jar 文件,并将它们放在同一目录下。
  通过CMD运行指令 apktool d scratchjr1.2.4.apk,将 apk 文件解包,默认解包到当前目录下的同名文件夹下。
  4.添加角色图片资源。
  笔者所在的青岛崇德小学非常注重校园美德文化建设,设计打造的“小美”和“小德”卡通形象受到学生们的热烈欢迎,成为推广实施美德教育的有效载体。
  〖XC24.JPG;%22%22〗
  〖XC25.JPG;%22%22〗
  通过反复研究发现,ScratchJr在儿童美学方面下了很大功夫,内置的角色资源在筛选预览时使用PNG格式,最终舞台呈现时使用SVG格式,做到了舞台背景透明而且放大不失真的最佳效果。PNG和SVG角色图片资源分别存放在assets\\HTML5目录pnglibrary和svglibrary文件夹内,通过media.json文件进行资源数据规格描述。
  (1)使用Photoshop软件裁剪切割得到PNG格式的角色资源包,使用PNG图片转SVG工具得到SVG格式的角色资源包。将准备好的PNG角色图片资源放置到pnglibrary文件夹下,SVG角色图片资源放置到svglibrary文件夹下。
  (2)通过在线JOSN编辑器修改并替换数据描述文件media.json。JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式,采用完全独立于编程语言的文本格式来存储和表示数据,层次结构简洁清晰,易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
  注意以下事项:角色资源图片的宽、高尺寸务必精确,否则会导致在ScratchJr使用时比例失调;不能破坏JSON数据文件的格式,可以仿照已有的角色资源描述格式逐个添加,否则会导致ScratchJr无法读取角色资源;可以格式化JSON数据以方便进行编辑处理,但最终存储要使用压缩JSON格式,清除所有空白字符。
  〖XC26.JPG;%29%28〗
  5.通过CMD运行指令apktool b app -o other.apk(app 指需要打包的文件夹,-o other.apk 表示生产新文件),重新打包apk。
  〖XC27.JPG;%29%28〗
  6.刚刚打包生成的scratchjr1.2.5.apk无法进行正常安装,必须进行重新签名。
  (1)利用JDK下的keytool工具生成簽名证书keystore。通过CMD运行指令:keytool -genkey -alias abc.keystore -keyalg RSA -validity 20000 -keystore abc.keystore,填写相关信息,记好秘钥口令。
  (2)利用生成的签名证书abc.keystore对scratchjr1.2.5.apk进行签名。通过CMD运行指令:jarsigner -verbose -keystore abc.keystore -signedjar scratchjr1.2.5_cyy.apkscratchjr1.2.5.apk abc.keystore
  7.在安卓平板或手机安装scratchjr1.2.5_cyy.apk,此时角色库里就有了“小美”和“小德”卡通形象,可以在舞台中随意添加使用了。到此大功告成!
  【总结】
  通过反编译手段实现ScratchJr角色个性化定制,从而实现了教学场景搭建的多样化需求,为STEAM编程启蒙教育赋予了更多的可能性,对于满足低年级学生的个性化学习需求具有重大意义。
  最后,强调说明以下事项:(1)本文反编译方法不仅可以实现ScratchJr中角色的个性化订制,舞台背景、声音资源等都可以实现个性化订制。(2)受限于苹果iOS系统的封闭性,本文反编译方法仅适用Android安卓系统。(3)本文反编译方法仅限于编程教育教师本人用于课堂教学过程,工具和方法仅供学习交流,不可用作它途。(4)“小美”和“小德”卡通形象版权归青岛崇德小学所有,未经允许不可私自用于其它商业用途。
其他文献
近年来科学家发现了一组称之为超抗原(Superantigen)的微生物蛋白质。这些蛋白质之所以引起人们广泛的兴趣,是因为它们在非常规情况下,与免疫系统相互作用并引发诸如食物中毒、中
<正>0引言Philips V60呼吸机(以下简称"V60呼吸机")是一种采用微处理机控制的双水平气道正压通气呼吸辅助系统,该系统能够为自主呼吸的成年和儿科患者提供无创正压通气和有创
目的对安徽省皖南山区钩端螺旋体病(简称钩体病)流行菌群(型)更迭情况进行研究,掌握菌群动态,为钩体病防制提供科学依据.方法分别采用细菌分离培养和显微凝集试验(MAT)对自然
援外优惠贷款的现状、问题及思考中国进出口银行国际部总经理朱稳根援外优惠贷款是中国政府向其他发展中国家提供的具有援助性的中长期低息贷款,是我国援外方式改革的产物。1995年
【摘 要】本文通过就“特别学生”有效转化特别学生的教育对策进行定义,并从家庭因素、社会因素、学校因素、个人因素四大方面认真分析特别学生的形成原因,在此基础上,重点结合笔者自身实际,就如何有效转化特别学生,提出了给特别学生“家庭”温暖,给特别学生特殊“自由”,给特别学生“高级”关怀,给特别学生挪个“新窝”四种全新的策略,以教育工作过程中的若干实际案例来加以说明。  【关键词】转化;特别学生;策略;新
本文从戴望舒诗的意象与诗情的关系切入,具体阐述了悲秋意象、香草美人意象、夜意象、青色意象等意象群对诗情抒发的背景托举功能;重点阐述了诗文意象与标题意象反复的十几种
回 回 产卜爹仇贱回——回 日E回。”。回祖 一回“。回干 肉果幻中 N_。NH lP7-ewwe--一”$ MN。W;- __._——————》 砧叫]们羽 制作:陈恬’#陈川个美食 Back to yield
文章对国有企业改革中的债务处理问题、改制企业富余人员安置的补偿问题,以及经营管理者持股问题和国企改革方式与主导问题进行了分析与探讨,提出了实际操作中应注意的相关问题
本文认为在中国古代 ,边疆的概念有其特定的文化含义。不仅如此 ,边疆概念还有特定的、不同于西方以主权概念为中心的含义。边疆概念的这种特殊性质与中国古代特殊的、以汉文
<正>上海大众汽车有限公司(以下简称"上海大众")是中德合资的轿车生产企业,成立于1985年3月。合营各方分别是上海汽车工业(集团)总公司、德国大众汽车公司。中德双方投资比例