1、首先打開微信軟件app。
公司主營業(yè)務(wù):成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、移動(dòng)網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)推出平遠(yuǎn)免費(fèi)做網(wǎng)站回饋大家。
2、進(jìn)去后主頁后找到右下角的我的。
3、然后點(diǎn)擊一下。
4、進(jìn)去我的以后找到設(shè)置并點(diǎn)擊進(jìn)去。
5、找到顯示懸浮窗點(diǎn)擊一下并選擇小程序支付就開啟顯示懸浮窗了。
懸浮窗相信大家都不陌生,比如360手機(jī)衛(wèi)士的加速球,視頻應(yīng)用的小窗,可以占用很少的空間,又能保持跟用戶的交互。懸浮窗可以通過WindowManager.addView添加。具體用法可以看 Android懸浮窗用法總結(jié) ,按照這篇文章添加過懸浮窗之后,會(huì)發(fā)現(xiàn)有的手機(jī)上顯示不出來,這就是權(quán)限的問題了。
到這里,就明白我們只需要處理18=API23下某些rom的權(quán)限。
為什么某些rom那么特殊呢?
因?yàn)樵贏PI 18,Google新增了一個(gè)函數(shù)AppOpsManager,不過在這個(gè)版本,該函數(shù)是隱藏的 ( Android 4.3 隱藏功能 App Ops 分析 ),到API 19才公開。用這個(gè)函數(shù)可以對(duì)manifest申請(qǐng)的權(quán)限做一層限制,于是就有了360手機(jī)衛(wèi)士,小米安全中心。。。
檢測這些rom的權(quán)限,方法是一樣的,可以通過反射使用AppOpsManager.checkOp
檢測應(yīng)用是否有權(quán)限,可以防止異常,或者點(diǎn)擊事件沒反應(yīng)。為了給用戶提供更好地體驗(yàn),我們應(yīng)該引導(dǎo)用戶去權(quán)限設(shè)置頁面開啟權(quán)限。這些特殊rom的權(quán)限設(shè)置是不一樣的,所以需要先判斷手機(jī)rom,再分別去對(duì)應(yīng)的權(quán)限設(shè)置頁面。
具體方法見: Android判斷手機(jī)ROM
未完待續(xù)。。。
參考:
懸浮窗權(quán)限是Android提供的權(quán)限中的特殊權(quán)限,要申請(qǐng)后再使用,否則會(huì)導(dǎo)致彈框不能顯示、程序崩潰等問題
有的文章說MIUI系統(tǒng)可設(shè)置為 WindowManager.LayoutParams.TYPE_TOAST 避開懸浮框權(quán)限的申請(qǐng),我的實(shí)踐經(jīng)驗(yàn)是不要這樣設(shè)置,否則利用參考文獻(xiàn)中的方法操作后dialog還是顯示不出來
Android 懸浮窗權(quán)限各機(jī)型各系統(tǒng)適配大全
Android懸浮窗及權(quán)限 by JustDo23
github項(xiàng)目