Skip to main content

my.checkNativePermissions

checkNativePermissions

Last updated on

my.checkNativePermissions là API dùng để kiểm tra người dùng đã bật các quyền cho Tiki app hay chưa.

Quét mã để trải nghiệm

Xem code mẫu trên Tini Studio

Demo

Trải nghiệm thử với trình giả lập bên dưới

API Params

Thuộc tínhKiểu dữ liệuMô tả
scopeArrayMảng các quyền người dùng muốn kiểm tra. Hãy xem danh sách phạm vi để biết chi tiết.
Ví dụ: scope:["contacts"]
successFunctionCallback function khi việc kiểm tra thành công.
failFunctionCallback function khi việc kiểm tra bất thành.
completeFunctionCallback function khi việc kiểm tra hoàn tất bất kể thành công hay thất bại.

Callback function payload

Thuộc tínhKiểu dữ liệuMô tả
permissionsobjectKết quả người dùng đã bật quyền cho Tiki app, trong đó khoá là giá trị phạm vi và giá trị trả về là kiểu bool

Danh sách các phạm vi (Scope)

Phạm viMô tả
locationVị trí
cameraCamera
photoThư viện ảnh
contactsDanh sách liên hệ
notificationThông báo

Sample Code

index.js
Page({
data: {
permissions: [
{ key: 'contacts', value: false },
{ key: 'location', value: false },
{ key: 'notification', value: false },
{ key: 'camera', value: false },
{ key: 'photo', value: false }
]
},
onChange(e) {
if (e.detail.value.length > 0) {
const index = e.detail.value[0];
this.data.permissions[index] = {
...this.data.permissions[index],
value: !this.data.permissions[index].value
};
this.setData({
permissions: this.data.permissions
});
}
},
onCheckPermissions() {
const scope = this.data.permissions.reduce((arr, item) => {
if (item.value) {
arr.push(item.key);
}
return arr;
}, []);
my.checkNativePermissions({
scope,
success: (res) => {
my.alert({ content: JSON.stringify(res) });
},
fail: (res) => {
my.alert({ content: JSON.stringify(res) });
}
});
}
});
index.txml
<view>
<block-header title="Usage" description="Check native permission on device" />
<view class="block-content">
<checkbox-group onChange="onChange" tiki:for="{{permissions}}" :key="index">
<list-item>
<label class="label-line">
<checkbox class="label-line-checkbox" checked="{{item.value}}" value="{{index}}" />
<view class="label-line-content">{{item.key}}</view>
</label>
</list-item>
</checkbox-group>
<button class="button-full" onTap="onCheckPermissions">Check Permission</button>
</view>
</view>