1. 程式人生 > >Android中sharedUserId的用處

Android中sharedUserId的用處

不同APK之間如何互相訪問資料?

Android為我們提供了兩種資料互訪的方法:
(1) 使用Share Preference(設定為共有)或Content Provider
APK通過指定介面和資料供其它APK讀取,開發者需要實現介面和指定share的資料
(2)在配置檔案AndroidManifest.xml中配置相同的UserId
通過共享userid,擁有相同userid的使用者可以配置成執行在同一程序當中,因此預設就是可以互相訪問任意資料的
也可以配置為不同程序當中,彼此之間就像訪問自己的資料一樣訪問彼此的資料庫和檔案。

sharedUserId的用處

安裝在裝置中的每一個apk檔案,Android給每個APK程序分配一個單獨的使用者空間,其manifest中的userid就是對應一個Linux使用者都會被分配到一個屬於自己的統一的Linux使用者ID,並且為它建立一個沙箱,以防止影響其他應用程式(或者其他應用程式影響它)。使用者ID 在應用程式安裝到裝置中時被分配,並且在這個裝置中保持它的永久性。

通過Shared User id,擁有同一個User id的多個APK可以配置成執行在同一個程序中.所以預設就是可以互相訪問任意資料. 也可以配置成執行成不同的程序, 同時可以訪問其他APK的資料目錄下的資料庫和檔案.就像訪問本程式的資料一樣.

對於一個APK來說,如果要使用某個共享UID的話,必須做以下兩步:
1、在Manifest節點中增加android:sharedUserId屬性。
2、在Android.mk中增加LOCAL_CERTIFICATE的定義。(或者進行手動簽名)

—————————————————————————————————————————————————————
系統中所有使用android.uid.system作為共享UID的APK,都會首先在AndroidManifest.xml節點中增加android:sharedUserId=”android.uid.system”,然後在Android.mk中增加LOCAL_CERTIFICATE := platform。

系統中所有使用android.uid.shared作為共享UID的APK,都會在AndroidManifest.xml節點中增加android:sharedUserId=”android.uid.shared”,然後在Android.mk中增加LOCAL_CERTIFICATE := shared。

系統中所有使用android.media作為共享UID的APK,都會在AndroidManifest.xml節點中增加android:sharedUserId=”android.media”,然後在Android.mk中增加LOCAL_CERTIFICATE := media。

相關推薦

AndroidsharedUserId用處

不同APK之間如何互相訪問資料? Android為我們提供了兩種資料互訪的方法: (1) 使用Share Preference(設定為共有)或Content Provider APK通過指定介面和資料供其它APK讀取,開發者需要實現介面和指定share的資

AndroidsharedUserId

一、manifest標籤包含內容 <manifest xmlns:android="http://schemas.android.com/apk/res/android" // 名稱空間 android:versionCode="1" // 版

Android的線程

開發者 又是 ace appcompat 技術 ted unknown 消息通知 設計模型 本文轉自:http://www.jianshu.com/p/d59b3cce2b54 如何理解線程 在操作系統中,線程是操作系統調度的最小單元,同時線程又是一種受限的系統資源,即

AndroidgetDrawable和getColor過時的替代方法

this logs con 知識 log launcher 16px ase spa 版權聲明:本文為博主原創文章,未經博主允許不得轉載。 前言 Android SDK 升級到 23 之後,getDrawable和getColor方法提示過時。 解決方案 getRe

EventBus在Android的簡單使用

pos stop hub create 數據傳遞 bsp 還要 GridView itemclick EventBus是一個方便與Android中各組件通信的開源框架,開源地址;https://github.com/greenrobot/EventBus。Ev

Android通過反射來設置Toast的顯示時間

ring margin ner manage etc short 延遲 lln sse 這個Toast的顯示在Android中的用途還是非常大的,同一時候我們也知道toast顯示的時間是不可控的。我們僅僅能改動他的顯示樣式和顯示的位置,盡管他提供了一個顯示時間的設置方法

Android的GraphicBuffer同步機制-Fence

mman fill spl 之前 超出 on() passing cli 觸發 Fence是一種同步機制,在Android裏主要用於圖形系統中GraphicBuffer的同步。那它和已有同步機制相比有什麽特點呢?它主要被用來處理跨硬件的情況。尤其是CPU。GPU和HWC

Android處理大圖片時圖片壓縮

oca 內存空間 pan std ret bitmap sans source tar 1、BitmapFactory.Options中的屬性 在進行圖片壓縮時,是通過設置BitmapFactory.Options的一些值來改變圖片的屬性的,以下我們來看看BitmapF

關於android的單位(dp、sp)

字號 兩個 metrics 不一定 ont ace white 超級 style android讓人頭疼的適配問題。 --------- Android 中的單位大概有這些: 經常使用的dip、sp。有時候用到px。 --------- 介紹兩個類: Type

android圖型的陰影效果(shadow-effect-with-custom-shapes)

sim 狀態 odi bottom msu custom top ado cto 思路:在自己定義shape中添加一層或多層,並錯開。就可以顯示陰影效果。為添加立體感,button按下的時候,僅僅設置一層。我們能夠通過top, bottom, right 和 left 四

Android驗證輸入是否為漢字及手機號,郵箱驗證,IP地址可用port號驗證

bili repl ips gettext content 驗證 arr mat 數據 1,驗證是否為漢字 // 驗證昵稱 private boolean verifyNickname() { String nickname = edt_use

Android帶你開發一款自動爆破簽名校驗工具kstools

系統服務 代理類 water 利用 技術分享 roo 解決 問題 dia 一、技術回顧 為了安全起見,一些應用會利用自身的簽名信息對應用做一層防護,為了防止應用被二次打包操作,在之前已經介紹了很多關於應用簽名校驗爆破的方法,一條基本原則不能忘:全局搜索"signature"

android使用videoview播放視頻

idg pla dea extern sch dia 關聯 extend out 先是布局文件: 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 x

Android的Surface, SurfaceHolder, SurfaceHolder.Callback, SurfaceView

oid 格式 坐標系 androi 繪制 是把 nts embedded 成員 傳入一個surface,然後讓openGL在surface上畫圖 window->view hierachy(DecorView是tree的root)->ViewRoot->

Android關於JNI 的學習(一)對於JNIEnv的一些認識

else size 初步 jint 使用 包括 pri jnienv 就會 一個簡單的樣例讓我們初步地了解JNI的作用,可是關於JNI中的一些概念還是須要了解清楚,才可以更好的去利用它來實現我們想要做的事情。 那麽C++和Java之間的是怎樣通過JNI來進行互相調用的呢

Android實現陰影效果

sta 技術 wid 語言 mat floating 大表 ado sch 在Android L推出後,Google提出了全新的設計語言:材質設計。其中很重要的一點就是陰影效果的使用,你可以為每一個View設置一個elevation值,相當於除了x、y之外的z值,z值決定

Android不同方向嵌套滑動的解決方式(ListView為樣例)

!= anim button wpa ktr text boolean adapter repeat 前言: 就像手機QQ的聊天消息列表。一個縱向滑動的ListView列舉全部消息,但每一條消息能夠橫向滑動。 而默認情況下,僅僅能有一個地方消化處理觸摸事件,要麽Lis

android支持多種文件類型的下載類

context nts 下載 tor oid tracking ref pen art String directoryName = Environment.getExternalStorageDirectory().toString()

Android的尺寸單位

enc .cn tro win 手機 需要 guid eat png px: 即像素,1px代表屏幕上一個物理的像素點; px單位不被建議使用,因為同樣100px的圖片,在不同手機上顯示的實際大小可能不同,如下圖所示(圖片來自android developer guide,

Android顏色的使用

tco ack source 也有 pac 開始 資源 odi layout 開發中使用的顏色可以分為兩種,自定義顏色和系統顏色 1.自定義顏色: 顏色值的定義是通過RGB三原色和一個alpha值來定義的(加色原理)。以井號(#)開始,後面是Alpha-Red-Green-