小程序功能:
此小程序主要是用圈子代表兴趣圈,可以自行创建也可以加入公共圈子,也可以通过搜索加入别人的圈子。
1,进入首页,如果没有加入过圈子,则会显示一个欢迎界面以及创建圈子的按钮。
2,进入创建圈子界面,最顶上一栏为公共圈子,第二栏为搜索圈子以及创建圈子。
3,创建完圈子之后回到首页可以点击进入圈子。
4,圈子内分为我的,发现,和排行榜。发现界面可以点赞,排行榜是圈子内所有人的打卡排名
5,点击最底部可以进入打卡界面,打卡成功后可以显示打卡图片。
6,我的页面有自己个人消息。
下面说说在搭建小程序中会遇到的问题。
因为小程序涉及到个人内容的分享。所以一定要对文字进行检测防止出现一些违法的消息。
我用的是微信文本安全检查。
public String get_ac_token() {
String appid="*******";
String secret="*******";
String grant_type="client_credential";
//封装请求数据
String params = "grant_type=" + grant_type + "&secret=" + secret + "&appid="+ appid;
String get=HttpRequest.sendGet("https://api.weixin.qq.com/cgi-bin/token", params);
JSONObject json = new JSONObject(get);
//拿到accesstoken
String accesstoken = (String) json.get("access_token");
return accesstoken;
}
利用上面这个代码可以获取到自己微信小程序的token,微信的token每两个小时会更新一次,所以最好用数据库存一下,每两个小时更新一次。文字安全这个是最重要的一点。
还有小程序获取用户openid,用户openid是用户的唯一标识,可以作为自己程序的用户id使用
public class getopenid {
public String getopenid(String appid,String code,String secret) {
BufferedReader in = null;
//appid和secret是开发者分别是小程序ID和小程序密钥,开发者通过微信公众平台-》设置-》开发设置就可以直接获取,
String url="https://api.weixin.qq.com/sns/jscode2session?appid="
+appid+"&secret="+secret+"&js_code="+code+"&grant_type=authorization_code";
try {
URL weChatUrl = new URL(url);
// 打开和URL之间的连接
URLConnection connection = weChatUrl.openConnection();
// 设置通用的请求属性
connection.setConnectTimeout(5000);
connection.setReadTimeout(5000);
// 建立实际的连接
connection.connect();
// 定义 BufferedReader输入流来读取URL的响应
in = new BufferedReader(new InputStreamReader(connection.getInputStream()));
StringBuffer sb = new StringBuffer();
String line;
while ((line = in.readLine()) != null) {
sb.append(line);
}
return sb.toString();
} catch (Exception e1) {
throw new RuntimeException(e1);
}
// 使用finally块来关闭输入流
finally {
try {
if (in != null) {
in.close();
}
} catch (Exception e2) {
e2.printStackTrace();
}
}
}
}
还有因为涉及到随机生成打卡图片,所以我是直接在微信小程序前端加了随机调取数组内的文字和图片链接。
一共30行文字和20张图片,可以随机生成60种不同的搭配。
这是一部分截图,小程序类似与vue,只要会vue上手微信小程序非常简单。