import storage from './storage.js' /** * 隐私协议管理工具 */ export default { /** * 检查隐私协议同意状态 * @returns {boolean} 是否已同意隐私协议 */ checkAgreement() { return !!storage.getPrivacyAgreed() }, /** * 检查隐私协议状态,如果未同意则跳转到协议页面 * @returns {boolean} 是否已同意隐私协议 */ checkAndRedirect() { const agreed = this.checkAgreement() if (!agreed) { console.log('用户未同意隐私协议,跳转到隐私协议页面') uni.reLaunch({ url: '/pages/privacy/privacy-agreement' }) return false } return true }, /** * 设置隐私协议同意状态 * @param {boolean} agreed 是否同意 */ setAgreement(agreed) { storage.setPrivacyAgreed(agreed) }, /** * 清除隐私协议同意状态 */ clearAgreement() { storage.removePrivacyAgreed() }, /** * 检查是否需要显示隐私协议(适用于多端) * @returns {boolean} 是否需要显示隐私协议 */ shouldShowAgreement() { // #ifdef APP-PLUS || APP-HARMONY || H5 return !this.checkAgreement() // #endif // #ifdef MP // 小程序环境可能有不同的隐私协议要求 return !this.checkAgreement() // #endif // 其他环境默认不显示 // #ifndef APP-PLUS || APP-HARMONY || H5 || MP return false // #endif } }