微信小程序垃圾分类系统的开发与部署
一、实验目标
-
学习并掌握微信小程序的开发流程及相关工具的使用。
-
通过百度智能云图像识别API,增强小程序的垃圾分类功能。
-
了解微信云开发环境的配置与使用,学会云函数与云数据库的部署。
二、实验步骤
1. 创建微信小程序
- 在微信公众平台创建一个新的小程序,并填写相关信息。
- 下载微信开发者工具,使用小程序的AppID创建一个新的项目。
2. 注册百度智能云并配置API
- 注册百度智能云并完成实名认证。
- 创建一个图像识别应用,获取API Key和Secret Key。
- 开通的图像识别服务,免费无法用 , 换成按量付费
3.导入垃圾分类小程序项目
- 原码&数据链接:https://gitee.com/KaiFeng10086/24-mobile-software-development/tree/master/lab3_/garbage-sorting-applet
4. 创建微信云开发环境
- 打开微信开发者工具,在项目中创建一个云开发环境,并记录环境ID。
- 配置开发工具中app.js的环境ID,使之与项目绑定。
5. 配置百度API和云环境ID
- 添加百度API的Key和Secret。
- 确保
project.config.json
文件中的appid和云环境ID设置正确。
6. 部署云函数
- 在微信开发者工具中,展开
cloudfunctions
文件夹,对每个子文件夹右键选择“上传并部署(不上传 node_modules)”。 - 确保所有云函数成功部署。
在这里插入图片描述
- 部署云数据库
- 进入微信开发者工具的“云开发”->“数据库”部分。
- 创建
trash
和type
集合,分别导入trash.json
和type.json
文件。 - 确保数据结构与程序中的设计一致。
三、程序运行结果
四、问题总结
1.接口无法使用
2.数据集付费
- (1)按照源代码README中截图的trash结构,先自己尝试建立数据集、并导入;type是根据自己理解建的,后来发现与原数据集存在差异
[
{
"_id": "34586bfd200e2d5069fe73c575b85a",
"add_time": 0,
"category": 2,
"click_times": 41,
"id": 1,
"name": "纸巾"
},
{
"_id": "41586bfd200e2d5069fe73c575b85b",
"add_time": 0,
"category": 1,
"click_times": 55,
"id": 2,
"name": "塑料瓶"
},
{
"_id": "52586bfd200e2d5069fe73c575b85c",
"add_time": 0,
"category": 3,
"click_times": 23,
"id": 3,
"name": "果皮"
},
{
"_id": "63586bfd200e2d5069fe73c575b85d",
"add_time": 0,
"category": 4,
"click_times": 67,
"id": 4,
"name": "电池"
},
{
"_id": "74586bfd200e2d5069fe73c575b85e",
"add_time": 0,
"category": 2,
"click_times": 34,
"id": 5,
"name": "旧报纸"
},
{
"_id": "85586bfd200e2d5069fe73c575b85f",
"add_time": 0,
"category": 1,
"click_times": 45,
"id": 6,
"name": "易拉罐"
},
{
"_id": "96586bfd200e2d5069fe73c575b860",
"add_time": 0,
"category": 3,
"click_times": 29,
"id": 7,
"name": "菜叶"
},
{
"_id": "A6586bfd200e2d5069fe73c575b861",
"add_time": 0,
"category": 4,
"click_times": 58,
"id": 8,
"name": "废灯管"
},
{
"_id": "B6586bfd200e2d5069fe73c575b862",
"add_time": 0,
"category": 2,
"click_times": 21,
"id": 9,
"name": "玻璃瓶"
},
{
"_id": "C6586bfd200e2d5069fe73c575b863",
"add_time": 0,
"category": 1,
"click_times": 13,
"id": 10,
"name": "塑料袋"
}
]
[
{
"_id": "1",
"category": 1,
"name": "可回收物"
},
{
"_id": "2",
"category": 2,
"name": "有害垃圾"
},
{
"_id": "3",
"category": 3,
"name": "厨余垃圾"
},
{
"_id": "4",
"category": 4,
"name": "其他垃圾"
}
]
-
并导入数据库中
-
原数据格式如下:
- 对search部分的逻辑进行修改
能够实现搜索分类功能
- (2) 因自己设计的数据量多少,后来又换成老师给的数据集,进行部署
五、实验总结
本次实验让我对微信小程序开发流程有了更深入的理解,特别是云开发环境的使用以及与第三方API(如百度智能云)的集成。通过实际操作,我熟悉了如何在微信小程序中调用云函数、处理云数据库,以及如何处理API请求。在实验过程中,也遇到了一些问题,如API调用失败,通过调试和查阅文档,最终解决了这些问题。
通过这个实验,我不仅掌握了微信小程序的开发技术,还体验了如何在实际项目中集成外部API,提高了自己的开发技能和问题解决能力。