帖子

AI实践课堂学习笔记分享园地 | 讯飞AI大学

  [复制链接]
138****7951 发表于 2020-9-20 22:41:10
51#
#Day 3+学习笔记+09/16

今天主要学习小程序实战-游戏场景识别的开发。此次实战,需要用到录音管理器 RecorderManager 进行录音,还会用到 wx.uploadFile 将本地资源上传到服务器。

可以在app.json文件的pages参数下,添加一个 "pages/game/game" 来新建要开发的项目。

在 game.wxml 文件里添加 text 显示录音结果,其中录音结果字符串 resultText 在 game.js 文件下获取。
使用道具 举报 回复
138****7951 发表于 2020-9-20 22:42:45
52#
#Day 4+学习笔记+09/17

今天主要学习小程序实战-游戏场景识别的开发。

在wxml文件中,给view添加单击事件可以使用bindtap参数:<view class="clear" bindtap="clearResult">清空</view>

然后在js文件中填写具体的函数内容:

clearResult:function(){
this.setData({
resultText:''
})
},

给组件添加自定义事件:<record class="footer" bindmyevent="handleMyEvent" />

js页面:handleMyEvent:function(e){}
使用道具 举报 回复
138****7951 发表于 2020-9-20 22:44:05
53#
#Day 5+学习笔记+09/18

今天主要学习小程序实战-语音测评。

语音测评是指通过智能语音技术自动对发音水平进行评价、发音错误、缺陷定位和问题分析的软件系统。

语音测评同样会用到录音功能,所有游戏场景识别中的record组件可以直接拿来在语音测评下使用。

本次语音测评主要可以进行中午语音测试和英文语音测试,所有可以设置一个picker进行不同语音的切换:

<picker range="{{objectArray}}" range-key="name" value="{{index}}" bindchange="bindPickerChange">
<button>切换语音</button>
</picker>
使用道具 举报 回复
138****7951 发表于 2020-9-20 22:45:27
54#
#Day 6+学习笔记+09/19

今天主要学习小程序实战-语音测评。

给开始录音组件绑定自定义事件:<record class="footer" bindmyevent="handleMyEvent" />

根据所选择的语言,调用不同的函数,显示相应的测评结果:

handleMyEvent:function(e){
wx.showLoading({
mask:true,
title: '识别中...',
})
console.log(e.detail.tempFilePath)
const filePath=e.detail.tempFilePath
const id=this.data.objectArray[this.data.index].id
const exampleText=this.data.examples[id]
if(this.data.index==0){
this.getCnResult(filePath,exampleText)
}else{
this.getEnResult(filePath,exampleText)
}
},
使用道具 举报 回复
138****7951 发表于 2020-9-20 22:46:53
55#
#Day 7+学习笔记+09/20

现在几乎人人都有微信,学习微信小程序开发,即使最后没有开发小程序,对自己也是有帮助的,至少能够帮助自己更好地了解微信小程序知识,知道微信小程序是如何运行的。很好的一系列课程,就是理论知识的介绍太少了,感觉实战理解起来比较困难。
使用道具 举报 回复
158****6168 发表于 2020-9-20 22:47:55
56#
Day5+学习笔记+9/20

小程序基础1.jpg
小程序基础2.jpg
小程序基础3.jpg
使用道具 举报 回复
130****5381 发表于 2020-9-20 23:00:34
57#
#Day 6+学习笔记+09/20

20200920225938.png
使用道具 举报 回复
138****5447 发表于 2020-9-21 15:48:02
58#
#Day 8+学习笔记+09/21

WXS响应事件

有频繁用户交互的效果在小程序上表现是比较卡顿的,例如页面有 2 个元素 A 和 B,用户在 A 上做 touchmove 手势,要求 B 也跟随移动,movable-view 就是一个典型的例子。一次 touchmove 事件的响应过程为:
a、touchmove 事件从视图层(Webview)抛到逻辑层(App Service)
b、逻辑层(App Service)处理 touchmove 事件,再通过 setData 来改变 B 的位置
一次 touchmove 的响应需要经过 2 次的逻辑层和渲染层的通信以及一次渲染,通信的耗时比较大。此外 setData 渲染也会阻塞其它脚本执行,导致了整个用户交互的动画过程会有延迟

使用道具 举报 回复
189****9142 发表于 2020-9-21 21:04:37
59#
Day5 颜值分析
1、技术剖析
①客户端上传图片到服务端;
②服务端进行图片存储,人脸特征提取;
③得到处理结果,解析返回到客户端;
④客户端效果展示。

使用道具 举报 回复
138****5447 发表于 2020-9-22 14:32:18
60#
#Day 9+学习笔记+09/22后台(包括云函数与自建后台)注入漏洞
注入漏洞(SQL、 命令等)通常指用户绕过后台代码限制,直接在数据库、 shell 内执行自定义代码。
常见的注入漏洞有:
SQL 注入
SQL 注入是指 Web 程序代码中对于用户提交的参数未做有效过滤就直接拼接到 SQL 语句中执行,导致参数中的特殊字符打破了 SQL 语句原有逻辑,黑客可以利用该漏洞执行任意 SQL 语句。
开发建议:
  • 使用数据库提供的参数化查询来进行数据库操作,不允许直接通过拼接字符串的方式来合成 SQL 语句。
  • 如果存在部分情况需要通过拼接的方式来合成 SQL ,拼接的变量必须要经过处理:
    • 对于整数,需要判断变量是否为整数类型。
    • 对于字符串,需要对单引号、双引号等做转义处理。
  • 避免 Web 应用显示 SQL 的报错信息。
  • 保证 Web 应用里每一数据层的编码统一。

使用道具 举报 回复