szjuliet 发表于 2022-9-3 01:01:43

合并App Inventor项目文件

《家庭安全相册》(监护人端)程序相对复杂,不同功能在不同项目里编写代码并进行测试,这样可以快速定位和解决问题。两个项目都调试完成后再进行项目合并。需要使用特定工具对App Inventor进行项目合并,以下是合并方法。
参考资料:https://appinventor.mit.edu/explore/resources/ai2-project-merger


步骤1下载安装Java JDK


如果已经下载安装请忽略此步。
在浏览器中打开地址:https://www.oracle.com/java/technologies/javase/jdk18-archive-downloads.html,选择合适的版本下载并安装。
步骤2下载合并工具


下载地址为:https://github.com/mit-cml/appinventor-sources/raw/master/appinventor/aimerger/AI2MergerApp.jar
如果无法访问,可直接点击下载。

步骤3下载需要合并的App Inventor文件


因为App Inventor只允许一个Screen1,如果合并前就已经有合并的设想,可以在界面设计时只有一个项目有Screen1(主项目),其他项目都在其他屏幕中进行,这样合并后会自动添加。
如果两个项目都使用了数据库,如果数据库需要共同使用,数据库的名字也可保持一致。
如果两个项目都是分头开发,且都是在Screen1中开发,先确定需要保留Screen1的主项目,次项目中的Screen1可以在合并时更名。
这个工具很适合团队开发项目。在开发前需要规划好项目的功能、变量、数据库、时钟、文件等并尽可能的保持一致性。同时也要引导学生在开发时协作撰写开发文档,实时更新开发进度以及开发要素(组件、代码等),保证所有开发人员能够了解彼此正在进行的工作,避免合并时产生错误。

步骤4 项目合并


1. 双击AI2MergerApp.jar,添加两个需要合并的项目文件,分别勾选两个项目中合并后需要的屏幕和assets文件,点击Merge合并。

https://makelogimg.dfrobot.com.cn/makelog/5b404f0cd1a37b6c0f5ec314/65e09daa997d948d044c7d274d466b48.png?imageView2/2/w/1600

2. 如果两个项目都有屏幕Screen1,会提示需要对第二个Screen1重命名。

https://makelogimg.dfrobot.com.cn/makelog/5b404f0cd1a37b6c0f5ec314/75e7278f0deb9e4e47364d8b365906e6.png?imageView2/2/w/1600

3. 输入重命名的屏幕名字,点击“确定”

https://makelogimg.dfrobot.com.cn/makelog/5b404f0cd1a37b6c0f5ec314/2e5dbebc8e2cf45e063f307195731eb7.png?imageView2/2/w/1600

4.弹出对话框,输入合并后的文件名,注意扩展名.aia不要遗漏,点击“保存”保存文件。

https://makelogimg.dfrobot.com.cn/makelog/5b404f0cd1a37b6c0f5ec314/5b6698e38aaa3cf25e651716cd382d6e.png?imageView2/2/w/1600

5.显示合并成功。询问是否需要继续合并,点击“是”继续合并,点击“否”结束合并并退出合并工具。

https://makelogimg.dfrobot.com.cn/makelog/5b404f0cd1a37b6c0f5ec314/ff8888b18978764509e131b5a22ea34f.png?imageView2/2/w/1600


步骤5导入合并文件


在App Inventor中导入合并后的文件,导入成功后可以看到项目名是Album,项目中有两个屏幕,一个是Screen1,一个是GeoFence。

https://makelogimg.dfrobot.com.cn/makelog/5b404f0cd1a37b6c0f5ec314/b2b3856a040da85f8653424c0bf3255f.png?imageView2/2/w/1600

切换到屏幕GeoFence,可以看到界面和我们的“电子围栏”完全一样。

https://makelogimg.dfrobot.com.cn/makelog/5b404f0cd1a37b6c0f5ec314/6aa1d4e4d2b66a08dcd1f92f65528242.png?imageView2/2/w/1600

步骤6编写屏幕跳转逻辑(略)


根据需要继续编写屏幕跳转的逻辑。如在Screen1中,通过MQTT获取家庭成员位置后或点击家庭成员图片后,显示家庭成员的标准地址(街道),然后跳转到屏幕GeoFence,显示当前位置是否在电子围栏内。再返回到Screen1,显示当前家庭成员状态图片。



vvjr 发表于 2022-9-6 13:05:31

6666666666
页: [1]
查看完整版本: 合并App Inventor项目文件