开发微信小程序的过程与心得
起因
作为家长,我近期参与了学校的护学岗工作。在这个过程中,我发现需要使用水印相机来记录护学活动,但市面上大多数水印相机应用都要求开通会员才能使用完整功能。作为一名程序员,我决定利用自己的技术背景,开发一个免费、易用且无需下载的水印相机小工具,供学校家长和社区成员使用。考虑到微信小程序的便捷性和广泛的用户基础,我决定将这款工具打造为微信小程序。
过程与步骤
- 决策与规划:
- 确定开发目标为微信小程序,以利用其无需下载、即点即用的特点。
- 规划小程序的核心功能,包括拍照、添加水印(包含日期、时间、地点等信息)、保存和分享图片。
- 学习与准备:
- 学习微信小程序的注册、开发知识,包括小程序的基本框架、API调用、界面设计等。
- 注册成为微信小程序开发者,下载并安装微信开发者工具。
- 功能实现:
- 拍照与选图:利用微信小程序的相机组件和图片选择器API实现。
- 水印添加:使用微信小程序的Canvas API在图片上绘制水印。
- 地址解析:注册腾讯位置服务账号,申请并使用微信位置信息接口获取用户位置,再将其转换为具体地址。
- 保存与分享:实现将带有水印的图片保存到用户相册,并提供分享功能。
- 合规与上架:
- 完成微信小程序的备案流程,包括提交相关资料、等待审核等。
- 为方便分享和推广,进行微信小程序的认证,并支付认证费用,个人是30元。

- 在审核过程中,积极与微信团队沟通,确保小程序符合相关政策和要求。
- 测试与优化:
- 进行功能测试,确保所有功能正常运行。
- 进行用户体验测试,收集用户反馈,对界面和功能进行优化。
心得
在这次开发过程中,我深刻体会到了做好一件事的不易。虽然微信小程序的开发看似简单,但实际上涉及了多个环节和步骤,包括学习新知识、处理合规问题、与第三方服务集成等。备案和认证过程也相对繁琐,需要耐心和细心地准备和沟通。
不过,当我看到小程序成功上线并受到用户的好评时,所有的努力都化为了满满的成就感。这次经历也让我更加珍惜每一次技术挑战和成长的机会。
结果
目前,这款水印相机微信小程序已经成功上线,还未推广,使用的用户不多,后续也根据平时使用到的工具慢慢添加了一些功能,如果图片压缩,后续可能会添加一下其他,也会根据用户提的要求添加一些用户需要使用到的工具,比如手机补光工具等。
同时,我也计划将这次开发过程中的经验和心得记录下来,分享给更多想要开发微信小程序的朋友们。希望我的经历能够为他们提供一些启示和帮助,让他们更加顺利地完成自己的小程序开发之旅。
相关文章:
开发微信小程序的过程与心得
起因 作为家长,我近期参与了学校的护学岗工作。在这个过程中,我发现需要使用水印相机来记录护学活动,但市面上大多数水印相机应用都要求开通会员才能使用完整功能。作为一名程序员,我决定利用自己的技术背景,开发一个…...
【1224】数据结构(sizeof/数组的长度定义/读取字符串函数/线性表长度/左值右值/静态变量/指针与引用)
1.对一维整型数组a的正确说明是 #define SIZE 10 (换行) int a[SIZE];说法是否正确? 正确 数组的SIZE可以用宏定义,但不能用变量 2.如有定义:char str[20];,能将从键盘输入的字符串“How are you”保存到 str 数组的语句是&#x…...
Android笔记(四十一):TabLayout内的tab不滚动问题
背景 假设二级页面是上面图片的布局,当进来时TabLayout和ViewPager2绑定完就马上调setCustomItem,跳转到最后一个tab页面时,会发现tab不滚动,手动滑一下ViewPager2时才会滚动tab到正确的位置 原因分析 调用TabLayoutMediator.at…...
基于pytorch的深度学习基础3——模型创建与nn.Module
三 模型创建与nn.Module 3.1 nn.Module 模型构建两要素: 构建子模块——__init()__拼接子模块——forward() 一个module可以有多个module; 一个module相当于一个运算,都必须实现forward函数; 每一个mod…...
Debian-linux运维-docker安装和配置
腾讯云搭建docker官方文档:https://cloud.tencent.com/document/product/213/46000 阿里云安装Docker官方文档:https://help.aliyun.com/zh/ecs/use-cases/install-and-use-docker-on-a-linux-ecs-instance 天翼云常见docker源配置指导:htt…...
Docker完整技术汇总
Docker 背景引入 在实际开发过程中有三个环境,分别是:开发环境、测试环境以及生产环境,假设开发环境中开发人员用的是jdk8,而在测试环境中测试人员用的时jdk7,这就导致程序员开发完系统后将其打成jar包发给测试人员后…...
在JavaScript文件中定义方法和数据(不是在对象里定以数据和方法,不要搞错了)
在对象里定以数据和方法看这一篇 对象字面量内定义属性和方法(什么使用const等关键字,什么时候用键值对)-CSDN博客https://blog.csdn.net/m0_62961212/article/details/144788665 下是在JavaScript文件中定义方法和数据的基本方式ÿ…...
python爬虫爬抖音小店商品数据+数据可视化
爬虫代码 爬虫代码是我调用的数据接口,可能会过一段时间用不了,欢迎大家留言评论,我会不定时更新 import requests import time cookies {token: 5549EB98B15E411DA0BD05935C0F225F,tfstk: g1vopsc0sQ5SwD8TyEWSTmONZ3cA2u6CReedJ9QEgZ7byz…...
关于 覆铜与导线之间间距较小需要增加间距 的解决方法
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/144776995 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV…...
uniapp中Nvue白屏问题 ReferenceError: require is not defined
uniapp控制台输出如下 exception function:createInstanceContext, exception:white screen cause create instanceContext failed,check js stack ->Uncaught ReferenceError: require is not defined 或者 exception function:createInstanceContext, exception:white s…...
在 Windows 上,如果忘记了 MySQL 密码 重置密码
在 Windows 上,如果忘记了 MySQL 密码,可以通过以下方法重置密码: 方法 1:以跳过权限验证模式启动 MySQL 并重置密码 停止 MySQL 服务: 打开 命令提示符 或 PowerShell,输入以下命令停止 MySQL 服务&#…...
《PyTorch:从基础概念到实战应用》
《PyTorch:从基础概念到实战应用》 一、PyTorch 初印象二、PyTorch 之历史溯源三、PyTorch 核心优势尽显(一)简洁高效,契合思维(二)易于上手,调试便捷(三)社区繁荣&#…...
前端:改变鼠标点击物体的颜色
需求: 需要改变图片中某一物体的颜色,该物体是纯色; 鼠标点击哪个物体,哪个物体的颜色变为指定的颜色,利用canvas实现。 演示案例 代码Demo <!DOCTYPE html> <html lang"en"><head>&l…...
Java-33 深入浅出 Spring - FactoryBean 和 BeanFactory BeanPostProcessor
点一下关注吧!!!非常感谢!!持续更新!!! 大数据篇正在更新!https://blog.csdn.net/w776341482/category_12713819.html 目前已经更新到了: MyBatisÿ…...
HTML4笔记
尚硅谷 一、前序知识 1.认识两位先驱 2.计算机基础知识 3.C/S架构与B/S架构 4.浏览器相关知识 5.网页相关概念 二、HTML简介 1.什么是HTML? 2.相关国际组织(了解) 3.HTML发展历史(了解)** 三、准备工作 1.常用电脑设置 2.安装Chrome浏览器 四、HTML入门 1.HTML初体验 2.H…...
python报错ModuleNotFoundError: No module named ‘visdom‘
在用虚拟环境跑深度学习代码时,新建的环境一般会缺少一些库,而一般解决的方法就是直接conda install,但是我在conda install visdom之后,安装是没有任何报错的,conda list里面也有visdom的信息,但是再运行代…...
linux-21 目录管理(一)mkdir命令,创建空目录
对linux而言,对一个系统管理来讲,最关键的还是文件管理。那所以我们接下来就来看看如何实现文件管理。当然,在文件管理之前,我们说过,文件通常都放在目录下,对吧?所以先了解目录,可能…...
总结-常见缓存替换算法
缓存替换算法 1. 总结 1. 总结 常见的缓存替换算法除了FIFO、LRU和LFU还有下面几种: 算法优点缺点适用场景FIFO简单实现可能移除重要数据嵌入式系统,简单场景LRU局部性原理良好维护成本高,占用更多存储空间内存管理,浏览器缓存L…...
【Vue】如何在 Vue 3 中使用组合式 API 与 Vuex 进行状态管理的详细教程
如何在 Vue 3 中使用组合式 API 与 Vuex 进行状态管理的详细教程。 安装 Vuex 首先,在你的 Vue 3 项目中安装 Vuex。可以使用 npm 或 yarn: npm install vuexnext --save # or yarn add vuexnext创建 Store 在 Vue 3 中,你可以使用 creat…...
VSCode 插件开发实战(十五):如何支持多语言
前言 在软件开发中,多语言支持(i18n)是一个非常重要的功能。无论是桌面应用、移动应用,还是浏览器插件,都需要考虑如何支持不同国家和地区的用户,软件应用的多语言支持(i18n)已经成…...
手把手教你用Proteus仿真51单片机与74HC164:从电路搭建到代码调试全流程
从零开始掌握Proteus仿真51单片机与74HC164的完整指南 在电子设计自动化领域,Proteus作为一款功能强大的电路仿真软件,为初学者提供了无与伦比的学习体验。特别是对于51单片机与74HC164这类经典组合的仿真学习,能够帮助工程师和学生以零成本、…...
OpenVSCode Server数据安全终极指南:完整备份与恢复策略
OpenVSCode Server数据安全终极指南:完整备份与恢复策略 【免费下载链接】openvscode-server 项目地址: https://gitcode.com/gh_mirrors/op/openvscode-server OpenVSCode Server是一款强大的云端代码编辑器,让开发者能够在浏览器中享受完整的V…...
【网络】Wireshark实战:TCP连接异常之RST报文深度解析
1. 认识TCP的RST报文:网络世界的紧急刹车 第一次在Wireshark里看到RST标志位时,我正盯着满屏的TCP握手包发呆。那个鲜红的[RST, ACK]就像交通信号灯突然变红,让原本流畅的数据传输戛然而止。简单来说,RST(Reset&#x…...
中关村论坛重磅发布十五项脑机接口成果
当前,脑机接口技术正处于从实验室走向临床应用、从技术突破迈向产业转化的关键时期。中关村论坛重磅发布十五项脑机接口创新成果,聚焦学术创新性、产品合规性、临床突破性与生态共建性四大核心维度,集中呈现我国在该领域的前沿进展。本次发布…...
OpenClaw技能扩展:GLM-4.7-Flash驱动Markdown文档自动整理
OpenClaw技能扩展:GLM-4.7-Flash驱动Markdown文档自动整理 1. 为什么需要文档自动化整理 作为一个长期使用Markdown写作的技术博主,我的文档目录早已变成了"数字坟场"。上周试图寻找半年前写的Docker网络配置笔记时,面对notes_20…...
如何快速使用wiliwili:Switch本地视频播放完全指南
如何快速使用wiliwili:Switch本地视频播放完全指南 【免费下载链接】wiliwili 专为手柄控制设计的第三方跨平台B站客户端,目前可以运行在PC全平台、PSVita、PS4 和 Nintendo Switch上 项目地址: https://gitcode.com/GitHub_Trending/wi/wiliwili …...
基于GPT-5.4的本科毕业论文智能写作实战指南:从实验数据到完稿的全流程教程
摘要: 对于已完成实验并手握参考文献的大四学生而言,将 months of experiments 转化为符合学术规范的毕业论文往往是最具挑战性的环节。本教程系统介绍如何利用GPT-5.4这一先进的大语言模型,通过科学的提示词工程(Prompt Engineer…...
颠覆性AI语音转换技术深度解析:Retrieval-based-Voice-Conversion-WebUI的5大创新特性揭秘
颠覆性AI语音转换技术深度解析:Retrieval-based-Voice-Conversion-WebUI的5大创新特性揭秘 【免费下载链接】Retrieval-based-Voice-Conversion-WebUI 语音数据小于等于10分钟也可以用来训练一个优秀的变声模型! 项目地址: https://gitcode.com/GitHub…...
别再死记硬背了!一文搞懂EtherCAT四种寻址方式(附FMMU配置实例)
深入解析EtherCAT四大寻址机制:从原理到实战配置 第一次接触EtherCAT的工程师,往往会被其复杂的寻址方式搞得晕头转向。位置寻址、节点寻址、逻辑寻址、广播寻址——这些术语听起来相似却又各具特点,死记硬背不仅效率低下,更会在实…...
智能风扇管家:FanControl如何让你的电脑安静又高效
智能风扇管家:FanControl如何让你的电脑安静又高效 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/Fa…...

