Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
梦想橡皮擦
uni-starter
提交
7e6d6f1e
U
uni-starter
项目概览
梦想橡皮擦
/
uni-starter
与 Fork 源项目一致
Fork自
DCloud / uni-starter
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
uni-starter
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
7e6d6f1e
编写于
6月 08, 2021
作者:
DCloud_JSON
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
新增,操作注册/登陆操作自动获取客户端设备:push_clientid、imei、oaid、idfa新增/更新到数据表uni-id-device
上级
5979a3ce
变更
16
隐藏空白更改
内联
并排
Showing
16 changed file
with
742 addition
and
210 deletion
+742
-210
App.vue
App.vue
+15
-2
changelog.md
changelog.md
+3
-1
common/appInit.js
common/appInit.js
+50
-6
package.json
package.json
+1
-1
pages/list/list.nvue
pages/list/list.nvue
+1
-1
pages/ucenter/login-page/index/index.vue
pages/ucenter/login-page/index/index.vue
+37
-20
uni-starter.config.js
uni-starter.config.js
+1
-1
uniCloud-aliyun/cloudfunctions/uni-id-cf/index.js
uniCloud-aliyun/cloudfunctions/uni-id-cf/index.js
+21
-7
uniCloud-aliyun/database/opendb-admin-menus.schema.json
uniCloud-aliyun/database/opendb-admin-menus.schema.json
+53
-0
uniCloud-aliyun/database/opendb-mall-goods.schema.json
uniCloud-aliyun/database/opendb-mall-goods.schema.json
+123
-0
uniCloud-aliyun/database/opendb-news-articles-detail.schema.json
...d-aliyun/database/opendb-news-articles-detail.schema.json
+122
-0
uniCloud-aliyun/database/read-news-log.schema.json
uniCloud-aliyun/database/read-news-log.schema.json
+35
-0
uniCloud-aliyun/database/uni-id-device.schema.json
uniCloud-aliyun/database/uni-id-device.schema.json
+64
-0
uni_modules/uni-upgrade-center/uniCloud/database/opendb-app-list.schema.json
...rade-center/uniCloud/database/opendb-app-list.schema.json
+62
-0
uni_modules_tools/copy/manifest.json
uni_modules_tools/copy/manifest.json
+104
-121
uni_modules_tools/copy/uni_modules/uni-config-center/uniCloud/cloudfunctions/common/uni-config-center/uni-id/config.json
...loudfunctions/common/uni-config-center/uni-id/config.json
+50
-50
未找到文件。
App.vue
浏览文件 @
7e6d6f1e
...
...
@@ -35,8 +35,21 @@
});
},
err
=>
{
console
.
error
(
'
获取服务供应商失败:
'
+
JSON
.
stringify
(
err
));
})
// #endif
})
//idfa有需要的用户在应用首次启动时自己获取存储到storage中
//https://ask.dcloud.net.cn/article/36107
/*if(~plus.storage.getItem('idfa')){
plus.device.getInfo({//需要勾选IDFA
success:function(e){
console.log('idfa = '+JSON.stringify(e.idfa));
},
fail:function(e){
console.log('getDeviceInfo failed: '+JSON.stringify(e));
}
});
}*/
// #endif
},
onShow
:
function
()
{
console
.
log
(
'
App Show
'
)
...
...
changelog.md
浏览文件 @
7e6d6f1e
## 1.0.16(2021-06-08)
新增,操作注册/登陆操作自动获取客户端设备:push_clientid、imei、oaid、idfa新增/更新到数据表uni-id-device
## 1.0.15(2021-06-07)
为迎合苹果App Store的规则,登陆与分享功能项显示之前自动检测是否安装了对应客户端。比如:设备未安装微信则不显示微信快捷登陆和微信分享选项。
为迎合苹果App Store的规则,登陆与分享功能项显示之前自动检测是否安装了对应客户端。比如:设备未安装微信则不显示微信快捷登陆和微信分享选项。
为迎合苹果App Store的规则,登陆与分享功能项显示之前自动检测是否安装了对应客户端。比如:设备未安装微信则不显示微信快捷登陆和微信分享选项。
## 1.0.14(2021-06-07)
修改错误的表名称uni-verify为opendb-verify-codes
## 1.0.13(2021-06-04)
...
...
common/appInit.js
浏览文件 @
7e6d6f1e
...
...
@@ -48,7 +48,6 @@ export default function() {
// 解绑clientDB错误事件
//db.off('error', onDBError)
db
.
on
(
'
refreshToken
'
,
function
({
token
,
tokenExpired
...
...
@@ -60,14 +59,59 @@ export default function() {
})
})
const
Debug
=
true
;
//拦截器封装callFunction
let
callFunctionOption
;
uniCloud
.
addInterceptor
(
'
callFunction
'
,{
invoke
(
e
){
console
.
log
(
JSON
.
stringify
(
e
));
callFunctionOption
=
e
async
invoke
(
option
){
// #ifdef APP-PLUS
// 判断如果是执行登陆(无论是哪种登陆方式),就记录用户的相关设备id
if
(
option
.
name
==
'
uni-id-cf
'
&&
(
option
.
data
.
action
==
'
register
'
||
option
.
data
.
action
.
slice
(
0
,
5
)
==
'
login
'
)){
let
oaid
=
await
new
Promise
((
callBack
,
fail
)
=>
{
if
(
uni
.
getSystemInfoSync
().
platform
==
"
android
"
)
{
plus
.
device
.
getOAID
({
success
:
function
(
e
){
callBack
(
e
.
oaid
)
console
.
log
(
'
getOAID success:
'
+
JSON
.
stringify
(
e
));
},
fail
:
function
(
e
){
fail
()
console
.
log
(
'
getOAID failed:
'
+
JSON
.
stringify
(
e
));
}
});
}
else
{
callBack
()
}
})
let
imei
=
await
new
Promise
((
callBack
,
fail
)
=>
{
if
(
uni
.
getSystemInfoSync
().
platform
==
"
android
"
)
{
plus
.
device
.
getInfo
({
success
:
function
(
e
){
callBack
(
e
.
imei
)
console
.
log
(
'
getOAID success:
'
+
JSON
.
stringify
(
e
));
},
fail
:
function
(
e
){
fail
()
console
.
log
(
'
getOAID failed:
'
+
JSON
.
stringify
(
e
));
}
});
}
else
{
callBack
()
}
})
let
deviceInfo
=
{
"
push_clientid
"
:
plus
.
push
.
getClientInfo
().
clientid
,
// 获取匿名设备标识符
"
imei
"
:
imei
,
"
oaid
"
:
oaid
,
"
idfa
"
:
plus
.
storage
.
getItem
(
'
idfa
'
)
||
''
//idfa有需要的用户在应用首次启动时自己获取存储到storage中
}
console
.
log
(
"
重新登陆/注册,获取设备id
"
,
deviceInfo
);
option
.
data
.
deviceInfo
=
deviceInfo
}
// #endif
console
.
log
(
JSON
.
stringify
(
option
));
callFunctionOption
=
option
},
complete
(
e
){
// console.log(JSON.stringify(e));
...
...
@@ -155,7 +199,7 @@ export default function() {
list
.
forEach
(
item
=>
{
//用遍历的方式分别为,uni.navigateTo,uni.redirectTo,uni.reLaunch,uni.switchTab这4个路由方法添加拦截器
uni
.
addInterceptor
(
item
,
{
invoke
(
e
)
{
// 调用前拦截
console
.
log
(
e
);
//
console.log(e);
//获取用户的token
const
token
=
uni
.
getStorageSync
(
'
uni_id_token
'
)
//获取当前页面路径(即url去掉"?"和"?"后的参数)
...
...
package.json
浏览文件 @
7e6d6f1e
{
"id"
:
"uni-starter"
,
"displayName"
:
"uni-starter"
,
"version"
:
"1.0.1
5
"
,
"version"
:
"1.0.1
6
"
,
"description"
:
"云端一体应用快速开发模版"
,
"keywords"
:
[
"uni-starter"
,
...
...
pages/list/list.nvue
浏览文件 @
7e6d6f1e
...
...
@@ -63,7 +63,7 @@
}
}
},
onReady() {
async onReady() {
// #ifdef APP-NVUE
this.listHight = uni.getSystemInfoSync().windowHeight - 96 + 'px'
// #endif
...
...
pages/ucenter/login-page/index/index.vue
浏览文件 @
7e6d6f1e
...
...
@@ -21,15 +21,20 @@
return
{
phone
:
""
,
agree
:
false
,
univerifyStyle
:
{
"
fullScreen
"
:
true
,
// 是否全屏显示,true表示全屏模式,false表示非全屏模式,默认值为false。
univerifyStyle
:
{
"
fullScreen
"
:
true
,
// 是否全屏显示,true表示全屏模式,false表示非全屏模式,默认值为false。
"
backgroundColor
"
:
"
#ffffff
"
,
// 授权页面背景颜色,默认值:#ffffff
"
buttons
"
:
{
// 自定义登陆按钮
"
iconWidth
"
:
"
45px
"
,
// 图标宽度(高度等比例缩放) 默认值:45px
"
list
"
:
[{
"
iconPath
"
:
"
/static/uni-quick-login/wechat.png
"
// 图标路径仅支持本地图片
}
]
"
list
"
:
[]
},
"
privacyTerms
"
:
{
"
defaultCheckBoxState
"
:
"
true
"
,
// 条款勾选框初始状态 默认值: true
"
textColor
"
:
"
#BBBBBB
"
,
// 文字颜色 默认值:#BBBBBB
"
termsColor
"
:
"
#5496E3
"
,
// 协议文字颜色 默认值: #5496E3
"
prefix
"
:
"
我已阅读并同意
"
,
// 条款前的文案 默认值:“我已阅读并同意”
"
suffix
"
:
"
并使用本机号码登录
"
,
// 条款后的文案 默认值:“并使用本机号码登录”
"
privacyItems
"
:
[]
}
}
}
...
...
@@ -37,25 +42,37 @@
computed
:
{
isPhone
()
{
return
/^1
\d{10}
$/
.
test
(
this
.
phone
);
},
agreements
()
{
return
getApp
().
globalData
.
config
.
about
.
agreements
||
[]
}
},
onLoad
(
e
)
{
uni
.
getProvider
({
service
:
'
oauth
'
,
success
:
res
=>
{
if
(
~
res
.
provider
.
indexOf
(
'
apple
'
))
{
this
.
univerifyStyle
.
buttons
.
list
.
push
({
"
iconPath
"
:
"
/static/uni-quick-login/apple.png
"
// 图标路径仅支持本地图片
})
}
}
});
onLoad
(
e
)
{
uni
.
getProvider
({
service
:
'
oauth
'
,
success
:
res
=>
{
if
(
~
res
.
provider
.
indexOf
(
'
weixin
'
)
&&
plus
.
runtime
.
isApplicationExist
({
pname
:
'
com.tencent.mm
'
,
action
:
'
weixin://
'
}))
{
this
.
univerifyStyle
.
buttons
.
list
.
push
({
"
iconPath
"
:
"
/static/uni-quick-login/wechat.png
"
})
}
if
(
~
res
.
provider
.
indexOf
(
'
apple
'
))
{
this
.
univerifyStyle
.
buttons
.
list
.
push
({
"
iconPath
"
:
"
/static/uni-quick-login/apple.png
"
})
}
}
});
//是否优先启动一键登录。即:页面一加载就启动一键登录
univerify_first
=
e
.
univerify_first
//#ifdef APP-PLUS
if
(
univerify_first
)
{
this
.
univerifyStyle
.
privacyTerms
.
privacyItems
=
this
.
agreements
const
pages
=
getCurrentPages
();
currentWebview
=
pages
[
pages
.
length
-
1
].
$getAppWebview
();
currentWebview
.
setStyle
({
...
...
@@ -67,7 +84,7 @@
onReady
()
{
//#ifdef APP-PLUS
if
(
univerify_first
)
{
console
.
log
(
'
开始一键登录
'
);
// console.log('开始一键登录');
this
.
agree
=
true
setTimeout
(()
=>
{
this
.
$refs
.
uniQuickLogin
.
login_before
(
'
univerify
'
)
...
...
uni-starter.config.js
浏览文件 @
7e6d6f1e
...
...
@@ -26,7 +26,7 @@ module.exports = {
"
/pages/ucenter/userinfo/uploadCutImageToUnicloud
"
,
"
/uni_modules/uni-feedback/pages/uni-feedback/add
"
],
"
login
"
:
[
"
u
niverify
"
,
"
smsCode
"
,
"
username
"
,
"
weixin
"
,
"
apple
"
],
"
login
"
:
[
"
u
sername
"
,
"
smsCode
"
,
"
univerify
"
,
"
weixin
"
,
"
apple
"
],
/*
根据数组的第0项,决定登录方式的第一优先级。
未列举到的,或设备环境不支持的选项,将被隐藏。
...
...
uniCloud-aliyun/cloudfunctions/uni-id-cf/index.js
浏览文件 @
7e6d6f1e
...
...
@@ -18,6 +18,7 @@ exports.main = async (event, context) => {
uniIdToken:系统自动传递的token,数据来源客户端的 uni.getStorageSync('uni_id_token')
*/
const
{
action
,
uniIdToken
}
=
event
;
const
deviceInfo
=
event
.
deviceInfo
||
{};
let
params
=
event
.
params
||
{};
/*
2.在某些操作之前我们要对用户对身份进行校验(也就是要检查用户的token)再将得到的uid写入params.uid
...
...
@@ -49,10 +50,16 @@ exports.main = async (event, context) => {
return
payload
}
params
.
uid
=
payload
.
uid
}
}
//3.注册成功后创建新用户的积分表方法
async
function
registerSuccess
(
uid
)
{
async
function
registerSuccess
(
uid
)
{
//添加当前用户设备信息
await
db
.
collection
(
'
uni-id-device
'
).
add
({
...
deviceInfo
,
user_id
:
uid
})
await
db
.
collection
(
'
uni-id-scores
'
).
add
({
user_id
:
uid
,
score
:
1
,
...
...
@@ -60,7 +67,7 @@ exports.main = async (event, context) => {
balance
:
1
,
comment
:
""
,
create_date
:
Date
.
now
()
})
})
}
//4.记录成功登录的日志方法
const
loginLog
=
async
(
res
=
{},
type
=
'
login
'
)
=>
{
...
...
@@ -81,8 +88,13 @@ exports.main = async (event, context) => {
}
:
{
state
:
0
})
if
(
res
.
type
==
'
register
'
)
{
if
(
res
.
type
==
'
register
'
)
{
await
registerSuccess
(
res
.
uid
)
}
else
{
if
(
deviceInfo
){
//更新当前用户设备信息
await
db
.
collection
(
'
uni-id-device
'
).
where
({
user_id
:
res
.
uid
}).
update
(
deviceInfo
)
}
}
return
await
uniIdLogCollection
.
add
(
logData
)
}
...
...
@@ -181,8 +193,10 @@ exports.main = async (event, context) => {
res
=
await
uniID
.
login
({
...
params
,
queryField
:
[
'
username
'
,
'
email
'
,
'
mobile
'
]
});
await
loginLog
(
res
);
});
if
(
res
.
code
===
0
){
await
loginLog
(
res
);
}
needCaptcha
=
await
getNeedCaptcha
();
}
...
...
@@ -353,4 +367,4 @@ exports.main = async (event, context) => {
}
//返回数据给客户端
return
res
}
;
}
\ No newline at end of file
uniCloud-aliyun/database/opendb-admin-menus.schema.json
0 → 100644
浏览文件 @
7e6d6f1e
{
"bsonType"
:
"object"
,
"required"
:
[
"name"
,
"menu_id"
],
"properties"
:
{
"_id"
:
{
"description"
:
"存储文档 ID,系统自动生成"
},
"menu_id"
:
{
"bsonType"
:
"string"
,
"description"
:
"菜单项的ID,不可重复"
,
"trim"
:
"both"
},
"name"
:
{
"bsonType"
:
"string"
,
"description"
:
"菜单名称"
,
"trim"
:
"both"
},
"icon"
:
{
"bsonType"
:
"string"
,
"description"
:
"菜单图标"
,
"trim"
:
"both"
},
"url"
:
{
"bsonType"
:
"string"
,
"description"
:
"菜单url"
,
"trim"
:
"both"
},
"sort"
:
{
"bsonType"
:
"int"
,
"description"
:
"菜单序号(越大越靠后)"
},
"parent_id"
:
{
"bsonType"
:
"string"
,
"description"
:
"父级菜单Id"
,
"parentKey"
:
"menu_id"
},
"permission"
:
{
"bsonType"
:
"array"
,
"description"
:
"菜单权限列表"
},
"enable"
:
{
"bsonType"
:
"bool"
,
"description"
:
"是否启用菜单,true启用、false禁用"
},
"create_date"
:
{
"bsonType"
:
"timestamp"
,
"description"
:
"菜单创建时间"
,
"forceDefaultValue"
:
{
"$env"
:
"now"
}
}
}
}
uniCloud-aliyun/database/opendb-mall-goods.schema.json
0 → 100644
浏览文件 @
7e6d6f1e
{
"bsonType"
:
"object"
,
"permission"
:
{
"create"
:
false
,
"delete"
:
false
,
"read"
:
"doc.is_on_sale == true"
,
"update"
:
false
},
"properties"
:
{
"_id"
:
{
"description"
:
"存储文档 ID(商品 ID),系统自动生成"
},
"add_date"
:
{
"bsonType"
:
"timestamp"
,
"defaultValue"
:
{
"$env"
:
"now"
},
"description"
:
"上架时间"
},
"category_id"
:
{
"bsonType"
:
"string"
,
"description"
:
"分类 id,参考`opendb-mall-categories`表"
,
"foreignKey"
:
"opendb-mall-categories._id"
},
"comment_count"
:
{
"bsonType"
:
"int"
,
"description"
:
"累计评论数"
},
"goods_banner_imgs"
:
{
"bsonType"
:
"array"
,
"description"
:
"商品详情页的banner图地址"
},
"goods_desc"
:
{
"bsonType"
:
"string"
,
"description"
:
"商品详细描述"
,
"title"
:
"详细描述"
,
"trim"
:
"both"
},
"goods_sn"
:
{
"bsonType"
:
"string"
,
"description"
:
"商品的唯一货号"
,
"title"
:
"货号"
,
"trim"
:
"both"
},
"goods_thumb"
:
{
"bsonType"
:
"string"
,
"description"
:
"商品缩略图,用于在列表或搜索结果中预览显示"
,
"pattern"
:
"^(http:
\/\/
|https:
\/\/
|
\/
|.
\/
|@
\/
)
\\
S"
,
"title"
:
"缩略图地址"
,
"trim"
:
"both"
},
"is_alone_sale"
:
{
"bsonType"
:
"bool"
,
"description"
:
"是否能单独销售;如果不能单独销售,则只能作为某商品的配件或者赠品销售"
},
"is_best"
:
{
"bsonType"
:
"bool"
,
"description"
:
"是否精品"
},
"is_hot"
:
{
"bsonType"
:
"bool"
,
"description"
:
"是否热销"
},
"is_new"
:
{
"bsonType"
:
"bool"
,
"description"
:
"是否新品"
,
"title"
:
"是否新品"
},
"is_on_sale"
:
{
"bsonType"
:
"bool"
,
"description"
:
"是否上架销售"
,
"title"
:
"是否上架"
},
"is_real"
:
{
"bsonType"
:
"bool"
,
"description"
:
"是否实物"
,
"title"
:
"是否为实物"
},
"keywords"
:
{
"bsonType"
:
"string"
,
"description"
:
"商品关键字,为搜索引擎收录使用"
,
"title"
:
"关键字"
,
"trim"
:
"both"
},
"last_modify_date"
:
{
"bsonType"
:
"timestamp"
,
"defaultValue"
:
{
"$env"
:
"now"
},
"description"
:
"最后修改时间"
},
"month_sell_count"
:
{
"bsonType"
:
"int"
,
"description"
:
"月销量"
},
"name"
:
{
"bsonType"
:
"string"
,
"description"
:
"商品名称"
,
"title"
:
"名称"
,
"trim"
:
"both"
},
"remain_count"
:
{
"bsonType"
:
"int"
,
"description"
:
"库存数量"
,
"title"
:
"库存数量"
},
"seller_note"
:
{
"bsonType"
:
"string"
,
"description"
:
"商家备注,仅商家可见"
,
"permission"
:
{
"read"
:
false
},
"trim"
:
"both"
},
"total_sell_count"
:
{
"bsonType"
:
"int"
,
"description"
:
"总销量"
}
},
"required"
:
[
"goods_sn"
,
"name"
,
"remain_count"
,
"month_sell_count"
,
"total_sell_count"
,
"comment_count"
,
"is_real"
,
"is_on_sale"
,
"is_alone_sale"
,
"is_best"
,
"is_new"
,
"is_hot"
]
}
uniCloud-aliyun/database/opendb-news-articles-detail.schema.json
0 → 100644
浏览文件 @
7e6d6f1e
{
"bsonType"
:
"object"
,
"permission"
:
{
"create"
:
"auth.uid != null"
,
"delete"
:
"doc.uid == auth.uid"
,
"read"
:
true
,
"update"
:
"doc.uid == auth.uid"
},
"properties"
:
{
"_id"
:
{
"description"
:
"存储文档 ID(用户 ID),系统自动生成"
},
"article_status"
:
{
"bsonType"
:
"int"
,
"description"
:
"文章状态:0 草稿箱 1 已发布"
,
"maximum"
:
1
,
"minimum"
:
0
},
"avatar"
:
{
"bsonType"
:
"string"
,
"description"
:
"缩略图地址"
,
"label"
:
"封面大图"
},
"category_id"
:
{
"bsonType"
:
"string"
,
"description"
:
"分类 id,参考`uni-news-categories`表"
},
"comment_count"
:
{
"bsonType"
:
"int"
,
"description"
:
"评论数量"
,
"permission"
:
{
"write"
:
false
}
},
"comment_status"
:
{
"bsonType"
:
"int"
,
"description"
:
"评论状态:0 关闭 1 开放"
,
"maximum"
:
1
,
"minimum"
:
0
},
"content"
:
{
"bsonType"
:
"string"
,
"description"
:
"文章内容"
,
"label"
:
"文章内容"
},
"excerpt"
:
{
"bsonType"
:
"string"
,
"description"
:
"文章摘录"
,
"label"
:
"摘要"
},
"is_essence"
:
{
"bsonType"
:
"bool"
,
"description"
:
"阅读加精"
,
"permission"
:
{
"write"
:
false
}
},
"is_sticky"
:
{
"bsonType"
:
"bool"
,
"description"
:
"是否置顶"
,
"permission"
:
{
"write"
:
false
}
},
"last_comment_user_id"
:
{
"bsonType"
:
"string"
,
"description"
:
"最后回复用户 id,参考`uni-id-users` 表"
},
"last_modify_date"
:
{
"bsonType"
:
"timestamp"
,
"description"
:
"最后修改时间"
},
"last_modify_ip"
:
{
"bsonType"
:
"string"
,
"description"
:
"最后修改时 IP 地址"
},
"like_count"
:
{
"bsonType"
:
"int"
,
"description"
:
"喜欢数、点赞数"
,
"permission"
:
{
"write"
:
false
}
},
"mode"
:
{
"bsonType"
:
"number"
,
"description"
:
"排版显示模式"
},
"publish_date"
:
{
"bsonType"
:
"timestamp"
,
"defaultValue"
:
{
"$env"
:
"now"
},
"description"
:
"发表时间"
},
"publish_ip"
:
{
"bsonType"
:
"string"
,
"description"
:
"发表时 IP 地址"
,
"forceDefaultValue"
:
{
"$env"
:
"clientIP"
}
},
"title"
:
{
"bsonType"
:
"string"
,
"description"
:
"标题"
,
"label"
:
"标题"
},
"user_id"
:
{
"bsonType"
:
"string"
,
"description"
:
"文章作者ID, 参考`uni-id-users` 表"
},
"view_count"
:
{
"bsonType"
:
"int"
,
"description"
:
"阅读数量"
,
"permission"
:
{
"write"
:
false
}
}
},
"required"
:
[
"user_id"
,
"title"
,
"content"
,
"article_status"
,
"view_count"
,
"like_count"
,
"is_sticky"
,
"is_essence"
,
"comment_status"
,
"comment_count"
,
"mode"
]
}
uniCloud-aliyun/database/read-news-log.schema.json
0 → 100644
浏览文件 @
7e6d6f1e
{
"bsonType"
:
"object"
,
"required"
:
[
"user_id"
,
"article_id"
],
"permission"
:
{
"read"
:
"doc.uid == auth.uid"
,
"create"
:
"auth.uid != null"
,
"update"
:
"doc.uid == auth.uid"
//
"delete"
:
"doc.uid == auth.uid"
},
"properties"
:
{
"_id"
:
{
"description"
:
"ID,系统自动生成"
},
"article_id"
:
{
"bsonType"
:
"string"
,
"description"
:
"文章id,参考opendb-news-articles表"
,
"foreignKey"
:
"opendb-news-articles._id"
},
"user_id"
:
{
"bsonType"
:
"string"
,
"description"
:
"收藏者id,参考uni-id-users表"
,
"forceDefaultValue"
:
{
"$env"
:
"uid"
},
"foreignKey"
:
"uni-id-users._id"
},
"last_time"
:
{
//设计策略是多次看同一个文章只做一次记录,重复看的文章时间更新为当前时间
"bsonType"
:
"timestamp"
,
"description"
:
"最后一次看的时间"
,
"defaultValue"
:
{
"$env"
:
"now"
}
}
}
}
uniCloud-aliyun/database/uni-id-device.schema.json
0 → 100644
浏览文件 @
7e6d6f1e
{
"bsonType"
:
"object"
,
"required"
:
[
"user_id"
],
"properties"
:
{
"_id"
:
{
"description"
:
"ID,系统自动生成"
},
"user_id"
:
{
"bsonType"
:
"string"
,
"description"
:
"用户id,参考uni-id-users表"
},
"ua"
:
{
"bsonType"
:
"string"
,
"description"
:
"userAgent"
},
"uuid"
:
{
"bsonType"
:
"string"
,
"description"
:
"设备唯一标识(需要加密存储)"
},
"vendor"
:
{
"bsonType"
:
"string"
,
"description"
:
"设备厂商"
},
"push_clientid"
:
{
"bsonType"
:
"string"
,
"description"
:
"推送设备客户端标识"
},
"imei"
:
{
"bsonType"
:
"string"
,
"description"
:
"国际移动设备识别码IMEI(International Mobile Equipment Identity)"
},
"oaid"
:
{
"bsonType"
:
"string"
,
"description"
:
"移动智能设备标识公共服务平台提供的匿名设备标识符(OAID)"
},
"idfa"
:
{
"bsonType"
:
"string"
,
"description"
:
"iOS平台配置应用使用广告标识(IDFA)"
},
"model"
:
{
"bsonType"
:
"string"
,
"description"
:
"设备型号"
},
"platform"
:
{
"bsonType"
:
"string"
,
"description"
:
"平台类型"
},
"create_date"
:
{
"bsonType"
:
"timestamp"
,
"description"
:
"创建时间"
,
"forceDefaultValue"
:
{
"$env"
:
"now"
}
},
"last_active_date"
:
{
"bsonType"
:
"timestamp"
,
"description"
:
"最后登录时间"
},
"last_active_ip"
:
{
"bsonType"
:
"string"
,
"description"
:
"最后登录IP"
}
}
}
uni_modules/uni-upgrade-center/uniCloud/database/opendb-app-list.schema.json
0 → 100644
浏览文件 @
7e6d6f1e
//
文档教程:
https://uniapp.dcloud.net.cn/uniCloud/schema
{
"bsonType"
:
"object"
,
"required"
:
[
"appid"
,
"name"
,
"description"
],
"permission"
:
{
"read"
:
false
,
"create"
:
false
,
"update"
:
false
,
"delete"
:
false
},
"properties"
:
{
"_id"
:
{
"description"
:
"ID,系统自动生成"
},
"appid"
:
{
"bsonType"
:
"string"
,
"description"
:
"应用的AppID"
,
"label"
:
"AppID"
,
"componentForEdit"
:
{
"name"
:
"uni-easyinput"
,
"props"
:
{
"disabled"
:
true
}
}
},
"name"
:
{
"bsonType"
:
"string"
,
"description"
:
"应用名称"
,
"label"
:
"应用名称"
,
"componentForEdit"
:
{
"name"
:
"uni-easyinput"
,
"props"
:
{
"disabled"
:
true
}
}
},
"description"
:
{
"bsonType"
:
"string"
,
"description"
:
"应用描述"
,
"label"
:
"应用描述"
,
"componentForEdit"
:
{
"name"
:
"textarea"
},
"componentForShow"
:
{
"name"
:
"textarea"
,
"props"
:
{
"disabled"
:
true
}
}
},
"create_date"
:
{
"bsonType"
:
"timestamp"
,
"label"
:
"创建时间"
,
"forceDefaultValue"
:
{
"$env"
:
"now"
},
"componentForEdit"
:
{
"name"
:
"uni-dateformat"
}
}
}
}
uni_modules_tools/copy/manifest.json
浏览文件 @
7e6d6f1e
{
"name"
:
"uni-starter"
,
"appid"
:
""
,
"description"
:
"云端一体应用快速开发模版"
,
"versionName"
:
"1.0.0"
,
"versionCode"
:
"100"
,
"transformPx"
:
false
,
"app-plus"
:
{
"privacy"
:
{
"prompt"
:
"template"
,
"template"
:
{
"title"
:
"服务协议和隐私政策"
,
"message"
:
" 请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 你可阅读<a href=
\"
https://ask.dcloud.net.cn/protocol.html
\"
>《服务协议》</a>和<a href=
\"
https://ask.dcloud.net.cn/protocol.html
\"
>《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。"
,
"buttonAccept"
:
"同意"
,
"buttonRefuse"
:
"暂不同意"
}
},
"compatible"
:
{
"ignoreVersion"
:
true
},
"usingComponents"
:
true
,
"nvueStyleCompiler"
:
"uni-app"
,
"compilerVersion"
:
3
,
"splashscreen"
:
{
"alwaysShowBeforeRender"
:
true
,
"waiting"
:
true
,
"autoclose"
:
true
,
"delay"
:
0
},
"modules"
:
{
"Fingerprint"
:
{
},
"Share"
:
{
},
"Push"
:
{
},
"OAuth"
:
{
},
"FaceID"
:
{
}
},
"distribute"
:
{
"android"
:
{
"permissions"
:
[
"<uses-feature android:name=
\"
android.hardware.camera
\"
/>"
,
"<uses-feature android:name=
\"
android.hardware.camera.autofocus
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.ACCESS_NETWORK_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.ACCESS_WIFI_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CAMERA
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CHANGE_NETWORK_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CHANGE_WIFI_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.FLASHLIGHT
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.GET_ACCOUNTS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.MODIFY_AUDIO_SETTINGS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.MOUNT_UNMOUNT_FILESYSTEMS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.READ_LOGS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.READ_PHONE_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.USE_FINGERPRINT
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.VIBRATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.WAKE_LOCK
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.WRITE_SETTINGS
\"
/>"
],
"abiFilters"
:
[
"armeabi-v7a"
,
"arm64-v8a"
,
"x86"
]
},
"ios"
:
{
},
"sdkConfigs"
:
{
"oauth"
:
{
"univerify"
:
{
},
"apple"
:
{
},
"weixin"
:
{
"appid"
:
"wxffdd8fa6ec4ef2a0"
,
"appsecret"
:
""
,
"UniversalLinks"
:
""
}
"name"
:
"uni-starter"
,
"appid"
:
"__UNI__E5373F7"
,
"description"
:
"云端一体应用快速开发模版"
,
"versionName"
:
"1.0.0"
,
"versionCode"
:
"100"
,
"transformPx"
:
false
,
"app-plus"
:
{
"privacy"
:
{
"prompt"
:
"template"
,
"template"
:
{
"title"
:
"服务协议和隐私政策"
,
"message"
:
" 请你务必审慎阅读、充分理解“服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 你可阅读<a href=
\"
https://ask.dcloud.net.cn/protocol.html
\"
>《服务协议》</a>和<a href=
\"
https://ask.dcloud.net.cn/protocol.html
\"
>《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。"
,
"buttonAccept"
:
"同意"
,
"buttonRefuse"
:
"暂不同意"
}
},
"ad"
:
{
"compatible"
:
{
"ignoreVersion"
:
true
},
"share"
:
{
"weixin"
:
{
"appid"
:
"wxffdd8fa6ec4ef2a0"
,
"UniversalLinks"
:
""
}
"usingComponents"
:
true
,
"nvueStyleCompiler"
:
"uni-app"
,
"compilerVersion"
:
3
,
"splashscreen"
:
{
"alwaysShowBeforeRender"
:
true
,
"waiting"
:
true
,
"autoclose"
:
true
,
"delay"
:
0
},
"geolocation"
:
{
"modules"
:
{
"Fingerprint"
:
{},
"Share"
:
{},
"Push"
:
{},
"OAuth"
:
{},
"FaceID"
:
{}
},
"push"
:
{
"unipush"
:
{
}
"distribute"
:
{
"android"
:
{
"permissions"
:
[
"<uses-feature android:name=
\"
android.hardware.camera
\"
/>"
,
"<uses-feature android:name=
\"
android.hardware.camera.autofocus
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.ACCESS_NETWORK_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.ACCESS_WIFI_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CAMERA
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CHANGE_NETWORK_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.CHANGE_WIFI_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.FLASHLIGHT
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.GET_ACCOUNTS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.MODIFY_AUDIO_SETTINGS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.MOUNT_UNMOUNT_FILESYSTEMS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.READ_LOGS
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.READ_PHONE_STATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.USE_FINGERPRINT
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.VIBRATE
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.WAKE_LOCK
\"
/>"
,
"<uses-permission android:name=
\"
android.permission.WRITE_SETTINGS
\"
/>"
],
"abiFilters"
:
[
"armeabi-v7a"
,
"arm64-v8a"
,
"x86"
]
},
"ios"
:
{},
"sdkConfigs"
:
{
"oauth"
:
{
"univerify"
:
{},
"apple"
:
{},
"weixin"
:
{
"appid"
:
"wxffdd8fa6ec4ef2a0"
,
"appsecret"
:
""
,
"UniversalLinks"
:
""
}
},
"ad"
:
{},
"share"
:
{
"weixin"
:
{
"appid"
:
"wxffdd8fa6ec4ef2a0"
,
"UniversalLinks"
:
""
}
},
"geolocation"
:
{},
"push"
:
{
"unipush"
:
{}
},
"payment"
:
{}
}
},
"payment"
:
{
}
}
"nvueLaunchMode"
:
""
},
"quickapp"
:
{},
"mp-weixin"
:
{
"appid"
:
""
,
"setting"
:
{
"urlCheck"
:
false
,
"es6"
:
false
},
"usingComponents"
:
true
,
"betterScopedSlots"
:
true
},
"mp-alipay"
:
{
"usingComponents"
:
true
},
"mp-baidu"
:
{
"usingComponents"
:
true
},
"mp-toutiao"
:
{
"usingComponents"
:
true
},
"nvueLaunchMode"
:
""
},
"quickapp"
:
{
},
"mp-weixin"
:
{
"appid"
:
""
,
"setting"
:
{
"urlCheck"
:
false
,
"es6"
:
false
"uniStatistics"
:
{
"enable"
:
false
},
"usingComponents"
:
true
,
"betterScopedSlots"
:
true
},
"mp-alipay"
:
{
"usingComponents"
:
true
},
"mp-baidu"
:
{
"usingComponents"
:
true
},
"mp-toutiao"
:
{
"usingComponents"
:
true
},
"uniStatistics"
:
{
"enable"
:
false
},
"h5"
:
{
"template"
:
""
}
}
\ No newline at end of file
"h5"
:
{
"template"
:
""
}
}
uni_modules_tools/copy/uni_modules/uni-config-center/uniCloud/cloudfunctions/common/uni-config-center/uni-id/config.json
浏览文件 @
7e6d6f1e
{
"passwordSecret"
:
"passwordSecret-demo"
,
"tokenSecret"
:
"tokenSecret-demo"
,
"tokenExpiresIn"
:
7200
,
"tokenExpiresThreshold"
:
600
,
"passwordErrorLimit"
:
6
,
"bindTokenToDevice"
:
true
,
"passwordErrorRetryTime"
:
3600
,
"autoSetInviteCode"
:
false
,
"forceInviteCode"
:
false
,
"app-plus"
:
{
"tokenExpiresIn"
:
2592000
,
"oauth"
:
{
"weixin"
:
{
"appid"
:
"
"
,
"appsecret"
:
"
"
},
"apple"
:
{
"bundleId"
:
"
"
}
}
},
"mp-weixin"
:
{
"oauth"
:
{
"weixin"
:
{
"appid"
:
"
"
,
"appsecret"
:
"
"
}
}
},
"mp-alipay"
:
{
"oauth"
:
{
"alipay"
:
{
"appid"
:
"
"
,
"privateKey"
:
"
"
}
}
},
"service"
:
{
"sms"
:
{
"name"
:
"
"
,
"codeExpiresIn"
:
300
,
"smsKey"
:
"
"
,
"smsSecret"
:
"
"
},
"univerify"
:
{
"appid"
:
"
"
,
"apiKey"
:
"
"
,
"apiSecret"
:
"
"
}
}
"passwordSecret"
:
"passwordSecret-demo"
,
"tokenSecret"
:
"tokenSecret-demo"
,
"tokenExpiresIn"
:
7200
,
"tokenExpiresThreshold"
:
600
,
"passwordErrorLimit"
:
6
,
"bindTokenToDevice"
:
true
,
"passwordErrorRetryTime"
:
3600
,
"autoSetInviteCode"
:
false
,
"forceInviteCode"
:
false
,
"app-plus"
:
{
"tokenExpiresIn"
:
2592000
,
"oauth"
:
{
"weixin"
:
{
"appid"
:
"wxffdd8fa6ec4ef2a0
"
,
"appsecret"
:
"6c9119430d7be0a147bcbbb73ef33acf
"
},
"apple"
:
{
"bundleId"
:
"io.dcloud.hellouniapp
"
}
}
},
"mp-weixin"
:
{
"oauth"
:
{
"weixin"
:
{
"appid"
:
"wx81dbb061d2258234
"
,
"appsecret"
:
"73be6e8b8b31b7b0783fe448cc1fe820
"
}
}
},
"mp-alipay"
:
{
"oauth"
:
{
"alipay"
:
{
"appid"
:
"alipay appid
"
,
"privateKey"
:
"alipay privateKey
"
}
}
},
"service"
:
{
"sms"
:
{
"name"
:
"DCloud
"
,
"codeExpiresIn"
:
300
,
"smsKey"
:
"71a19f38c954f7d768d68a050486bf15
"
,
"smsSecret"
:
"d6c424b702d73baa3b6e1a1452469213
"
},
"univerify"
:
{
"appid"
:
"__UNI__03B096E
"
,
"apiKey"
:
"3fc28519d90d74173bcecf2daf4ffcc4
"
,
"apiSecret"
:
"dd793e5bc4b372ce932f35bbb4c5d61b
"
}
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录