?微信要求小程序開發(fā)者在2023.9.15日前將小程序中調(diào)用獲取用戶隱私api的接口時(shí),都必須要先讓用戶授權(quán),如果用戶拒絕授權(quán),那么小程序的對(duì)應(yīng)接口或組件將直接禁用。
那么首先,請(qǐng)將微信小程序開發(fā)者工具-詳情-本地設(shè)置-基礎(chǔ)調(diào)試庫(kù) 切換至2.33.0以上。低于該調(diào)試庫(kù)會(huì)報(bào)錯(cuò)找不到相關(guān)api。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-699789.html
//簡(jiǎn)易流程代碼為
const Modal = () => {
const [openModal, setOpenModal] = useState(false);
//初始化檢查是否授權(quán)
useEffect(()=>{
//監(jiān)聽隱私接口需要用戶授權(quán)事件。當(dāng)需要用戶進(jìn)行隱私授權(quán)時(shí)會(huì)觸發(fā)。觸發(fā)該事件時(shí),開發(fā)者需要
彈出隱私協(xié)議說(shuō)明,并在用戶同意或拒絕授權(quán)后調(diào)用回調(diào)接口 resolve 進(jìn)行上報(bào)。
wx.onNeedPrivacyAuthorization(resolve => {
// 需要用戶同意隱私授權(quán)時(shí)
// 彈出開發(fā)者自定義的隱私授權(quán)彈窗
setOpenModal(true)
resolvePrivacyAuthorization = resolve
})
},[])
//用戶點(diǎn)擊“同意”按鈕,隱私協(xié)議事件回調(diào)
const handleAgreePrivacyAuthorization = ()=>{
resolvePrivacyAuthorization({ buttonId: 'agree-btn', event: 'agree' })
//關(guān)閉隱私協(xié)議彈窗
setOpenModal(false)
// 用戶點(diǎn)擊了同意,之后所有隱私接口和組件都可以調(diào)用了
// wx.getUserProfile();
// wx.chooseMedia();
// wx.getClipboardData();
// wx.startRecord();
}
//點(diǎn)擊隱私協(xié)議
const goWxAgreement = () => {
wx.openPrivacyContract({
success: (res) => {
console.log('打開隱私協(xié)議成功', res)
}, // 打開成功
fail: (res) => {
console.error('隱私協(xié)議打開失敗', res)
}, // 打開失敗
complete: () => { }
})
}
//點(diǎn)擊取消
const handleClickCancel = ()=>{
//關(guān)閉隱私協(xié)議彈窗
setOpenModal(false)
//...任意邏輯
}
return <View open={openModal}>
<Content>
在你使用【發(fā)卷小助手】小程序服務(wù)之前,請(qǐng)仔細(xì)閱讀<Text style={{ color:'#3b7eff'
}} onClick={goWxAgreement}>發(fā)卷小助手隱私保護(hù)指引</Text>。如你同意<Text
style={{ color: '#3b7eff' }} onClick={goWxAgreement}>發(fā)卷小助手隱私保護(hù)指.
引.</Text>,請(qǐng)點(diǎn)擊“同意”開始使用【發(fā)卷小助手】。
</Content>
<View>
<Button onClick={handleClickCancel}>取消</Button>
<Button
id="agree-btn"
openType="agreePrivacyAuthorization"
bindagreeprivacyauthorization={handleAgreePrivacyAuthorization}>
同意
</Button>
</View>
</View>
}
const Home = ()=>{
return <View>
xxxxx頁(yè)面內(nèi)容
//這里是自定義的隱私協(xié)議授權(quán)彈窗
<Modal />
</View>
}
?目前Taro官方還沒(méi)有給Button組件加上openType="agreePrivacyAuthorization"和bindagreeprivacyauthorization屬性,點(diǎn)擊按鈕無(wú)法觸發(fā)方法,所以暫時(shí)無(wú)解,期待taro官方解決!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-699789.html
到了這里,關(guān)于【Taro】微信小程序隱私協(xié)議改造的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!