提交 4bbac4fe 编写于 作者: fxy060608's avatar fxy060608

Merge branch 'dev' of https://github.com/dcloudio/uni-app into dev-quickapp

...@@ -4,11 +4,11 @@ import { ...@@ -4,11 +4,11 @@ import {
} from '../../platform' } from '../../platform'
const callbacks = { const callbacks = {
pause: [], pause: null,
resume: [], resume: null,
start: [], start: null,
stop: [], stop: null,
error: [] error: null
} }
class RecorderManager { class RecorderManager {
...@@ -17,15 +17,13 @@ class RecorderManager { ...@@ -17,15 +17,13 @@ class RecorderManager {
const state = res.state const state = res.state
delete res.state delete res.state
delete res.errMsg delete res.errMsg
callbacks[state].forEach(callback => { if (typeof callbacks[state] === 'function') {
if (typeof callback === 'function') { callbacks[state](res)
callback(res) }
}
})
}) })
} }
onError (callback) { onError (callback) {
callbacks.error.push(callback) callbacks.error = callback
} }
onFrameRecorded (callback) { onFrameRecorded (callback) {
...@@ -37,16 +35,16 @@ class RecorderManager { ...@@ -37,16 +35,16 @@ class RecorderManager {
} }
onPause (callback) { onPause (callback) {
callbacks.pause.push(callback) callbacks.pause = callback
} }
onResume (callback) { onResume (callback) {
callbacks.resume.push(callback) callbacks.resume = callback
} }
onStart (callback) { onStart (callback) {
callbacks.start.push(callback) callbacks.start = callback
} }
onStop (callback) { onStop (callback) {
callbacks.stop.push(callback) callbacks.stop = callback
} }
pause () { pause () {
invokeMethod('operateRecorder', { invokeMethod('operateRecorder', {
......
### 快应用适配教程 ## 快应用适配教程
使用 uni-app 规范适配快应用
#### 准备 - uni-app文档 [https://uniapp.dcloud.io/](https://uniapp.dcloud.io/)
- 快应用文档 [https://doc.quickapp.cn/](https://doc.quickapp.cn/)
1.安装 [快应用调试器](https://statres.quickapp.cn/quickapp/quickapp/201806/file/quickapp_debugger.apk)
2.打开快应用调试器,下载平台(快应用预览版:版本号1060)
3.安装 openssl(windows系统)
#### 搭建
1.创建 `hello uni-app` 测试工程
```
vue create -p dcloudio/uni-preset-vue#alpha my-qa-project -n
```
目前手动安装依赖库: 根目录执行
```
yarn add @dcloudio/uni-quickapp@alpha -D
```
2.生成证书 `certificate.pem``private.pem`:到目录 `src/sign/debug/` ### 开发
```
openssl req -newkey rsa:2048 -nodes -keyout private.pem -x509 -days 3650 -out certificate.pem
```
3.编译快应用 `rpk` 1.Fork 仓库 `uni-app` [https://github.com/dcloudio/uni-app](https://github.com/dcloudio/uni-app),切换到 dev 分支
```
npm run dev:quickapp
```
4.开启debug在线更新服务 2.使用 Vue 规范开发组件,参考 `Button` 组件及 `clipboard` 示例
``` ```
npm run serve:quickapp - button `src/platforms/quickapp/view/components/button`
- clipboard `src/platforms/quickapp/service/api/device/clipboard`
``` ```
5.打开快应用调试器,扫码安装或右上角设置服务器地址(注意带上`http://`,关闭USB调试可看到扫码)
6.修改代码后,会主动通知调试器更新,或者手动点击在线更新(调试可以点击右下角开始调试)
#### 开发调试代码
1.Fork 仓库 `uni-app` [https://github.com/dcloudio/uni-app](https://github.com/dcloudio/uni-app),切换到 dev 分支
2.编译 (输出目录`packages/uni-quickapp`) 2.编译 (输出目录`packages/uni-quickapp`)
``` ```
npm run build:quickapp npm run build:quickapp
``` ```
3.手动替换编译输出目录 `packages/uni-quickapp` 到测试工程 `node_modules/@dcloudio/uni-quickapp`,也可以考虑自己npm link本地`uni-quickapp`包(需要考虑三方依赖)
4.使用 pull request 提交代码
#### `uni-app` 目录说明 #### `uni-app` 目录说明
``` ```
...@@ -76,10 +41,63 @@ src ...@@ -76,10 +41,63 @@ src
│ └─button │ └─button
``` ```
### 测试
#### 开发示例 #### 搭建测试环境
- button 组件 `src/platforms/quickapp/view/components/button`
- clipboard API `src/platforms/quickapp/service/api/device/clipboard` 1.安装 [快应用调试器](https://statres.quickapp.cn/quickapp/quickapp/201806/file/quickapp_debugger.apk)
2.打开快应用调试器,下载平台(快应用预览版:版本号1060)
#### 搭建测试工程
1.创建测试工程 (推荐使用空项目,可选 `hello uni-app` 工程,包含组件及API示例,工程较复杂编译比较耗时)
```
vue create -p dcloudio/uni-preset-vue#alpha my-qa-project -n
```
```
<!--button 示例-->
<template>
<view>
<button>Button</button>
</view>
</template>
<script>
export default {
data() {
return {
}
},
onLoad() {
},
methods: {
}
}
</script>
<style>
</style>
```
2.编译快应用 `rpk`
```
npm run dev:quickapp
```
3.开启debug在线更新服务
```
npm run serve:quickapp
```
4.打开快应用调试器,扫码安装或右上角设置服务器地址(注意带上`http://`,关闭USB调试可看到扫码)
5.修改代码后,会主动通知调试器更新,或者手动点击在线更新(调试可以点击右下角开始调试)
6.手动替换编译输出目录 `packages/uni-quickapp` 到测试工程 `node_modules/@dcloudio/uni-quickapp`, 可以考虑 `npm link`
### 提交代码
使用 `pull request` 提交代码
...@@ -96,6 +114,14 @@ src ...@@ -96,6 +114,14 @@ src
} }
``` ```
### 生成证书 `certificate.pem` 和 `private.pem`
安装 openssl(windows系统)
```
openssl req -newkey rsa:2048 -nodes -keyout private.pem -x509 -days 3650 -out certificate.pem
```
- 发布快应用时需要使用自己的证书,开发期间为debug证书
注意: 注意:
hello uni-app使用了px单位,在快应用里等同于rpx,故页面显示异常,非调试ui阶段, hello uni-app使用了px单位,在快应用里等同于rpx,故页面显示异常,非调试ui阶段,
可以自己修改manifest.json->quickapp->config->designWidth=自己手头设备的逻辑像素,如360 可以自己修改manifest.json->quickapp->config->designWidth=自己手头设备的逻辑像素,如360
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册