亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

guest mode 無法record audio

發布時間:2020-07-21 04:29:16 來源:網絡 閱讀:1085 作者:lindt 欄目:移動開發

在owner切換成guest用戶時,發現無法獲取到OP_RECORD_AUDIO = 27權限


在創建audiosource時,傳入的包名

 new AudioSource(...

            String16("media")/* mOpPackageName */,

media UID 1013 屬于系統進程,得到userhandle 0

而在owner 切換到 guest 用戶時,audioservice 會將userhandle 0 disallow record audio 

 UserManagerService.getInstance().setSystemControlledUserRestriction(

                        UserManager.DISALLOW_RECORD_AUDIO, true, userId);//(userId = 0)


導致guest用戶無法獲取到record audio 權限


根據uid獲取userhandle 邏輯

core/java/android/os/UserHandle.java

public static @UserIdInt int getUserId(int uid) {

        if (MU_ENABLED) {

            return uid / PER_USER_RANGE;

        } else {

            return UserHandle.USER_SYSTEM;

        }

    }

M 上沒有切換問題,是因為
miracast 與 audio 運行在同一個進程中,在serviceutility.cpp中

if (getpid_cached == IPCThreadState::self()->getCallingPid()) return true;
會直接返回

而N 上面因為media harden原因,miracast與audio運行在不同進程中,該處無法直接返回,繼續進行ops權限檢查

ServiceUtility中放開對aid_media限制,無法通過CTS驗證



附錄 android 多用戶
http://blog.csdn.net/zhanglianyu00/article/details/50253187

3.Android多用戶 
Android4.2開始支持多用戶。Linux的uid/gid多用戶體系已經被用在App管理上了,所以android重新開發了一套多用戶體系,在UserManagerService中管理,PackageManagerService和ActivityManagerService中也有相關邏輯。Android的多用戶可以做到不同用戶的應用的物理文件級(數據)的區分,以實現不同用戶有不同的壁紙、密碼,以及不同的應用等。本文不展開多用戶的機制,只集中于uid。 
先看一下在多用戶下,應用的uid怎么變化。 
在一個有兩個用戶(用戶id分別為0和10)的安卓設備上,在用戶10下安裝一個應用,此時,在0下是看不到這個應用的。 

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

蓝田县| 黄大仙区| 苗栗县| 肇州县| 平安县| 深州市| 漳浦县| 庆元县| 定安县| 泗洪县| 稷山县| 定结县| 禹州市| 贺兰县| 绥棱县| 汝南县| 天峨县| 阜康市| 四平市| 隆回县| 荥经县| 山阳县| 都兰县| 宜兰市| 周至县| 平山县| 澜沧| 南木林县| 宝坻区| 西乡县| 琼海市| 德州市| 新乐市| 大方县| 茌平县| 长子县| 安西县| 华容县| 洪泽县| 昆明市| 屯留县|