沙箱

誤區(qū)

  • 一直以為Android的沙箱之間是不能相互訪問文件的,今天在驗證某個問題時進(jìn)行了測試,發(fā)現(xiàn)在未root設(shè)備上,不同沙箱之間可以通過寫死路徑的方式判斷文件是否存在,但是不能進(jìn)行讀寫。即:
  File.exists()可以進(jìn)行正常判斷,但是File.canRead()返回為false。但是當(dāng)設(shè)置為同一UID之后,相互之間是可以進(jìn)行讀寫。

該方案可以用于驗證是否安裝某個應(yīng)用。避免5.0之后的getInstallPackage獲取不到其他安裝包的問題。但是這種方式的缺點在于要提前知道文件的全路徑。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容