123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- <template>
- <view class="uni-padding-wrap">
- <page-head :title="title"></page-head>
- <view class="item-box">
- <text>当前应用隐私授权状态:</text>
- <text>{{ appPrivacy }}</text>
- </view>
- <!-- #ifdef MP-WEIXIN -->
- <view class="item-box">
- <text>隐私授权协议的名称:</text>
- <text>{{ privacyContractName }}</text>
- </view>
- <!-- #endif -->
- <view>
- <button class="privacy-button" type="primary" @tap="getPrivacySetting">
- 获取隐私协议授权状态
- </button>
- <button class="privacy-button" type="primary" open-type="agreePrivacyAuthorization">
- 同意隐私协议专用按钮
- </button>
- <!-- #ifdef APP -->
- <button class="privacy-button" type="primary" @tap="resetPrivacyAuthorization">
- 重置隐私协议授权状态
- </button>
- <button class="privacy-button" @tap="openPrivacyDialog">
- 显示隐私政策弹框
- </button>
- <!-- #endif -->
- </view>
- </view>
- </template>
- <script>
- export default {
- data() {
- return {
- title: '隐私信息授权',
- appPrivacy: '未获取',
- privacyContractName: "",
- listenId: 0
- }
- },
- onReady() {
- // #ifdef APP
- //添加 隐私协议监听
- const id = uni.onPrivacyAuthorizationChange((res) => {
- this.appPrivacy = res.needAuthorization ? "未同意" : "已同意"
- const privacyState = "监听到隐私协议状态已变更为 " + this.appPrivacy;
- uni.showToast({
- "position": "bottom",
- "title": privacyState
- })
- })
- this.listenId = id;
- uni.showToast({
- "position": "bottom",
- "title": "开启监听隐私协议状态"
- })
- // #endif
- },
- onUnload() {
- // #ifdef APP
- //注销监听
- uni.offPrivacyAuthorizationChange(this.listenId)
- this.listenId = 0;
- uni.showToast({
- "position": "bottom",
- "title": "已停止监听隐私协议状态"
- })
- // #endif
- },
- methods: {
- getPrivacySetting() {
- uni.getPrivacySetting({
- success: (res) => {
- this.appPrivacy = res.needAuthorization ? "未同意" : "已同意"
- // #ifdef MP-WEIXIN
- this.privacyContractName = res.privacyContractName
- // #endif
- }
- })
- },
- resetPrivacyAuthorization(){
- uni.resetPrivacyAuthorization()
- },
- openPrivacyDialog(){
- uni.openDialogPage({
- url: '/pages/component/button/privacy',
- })
- }
- }
- }
- </script>
- <style>
- .item-box {
- margin-bottom: 10px;
- display: flex;
- flex-direction: row;
- justify-content: space-between;
- }
- .privacy-button{
- margin-top: 5px;
- margin-bottom: 5px;
- }
- </style>
|