可以使用共享UserID的兩個應用程序訪問像drawables或字符串的其他資源嗎?有共享UserID的兩個應用程序
他們可以訪問彼此的資產嗎?
他們可以啓用或禁用其他組件嗎?
如果有這些可能,請說明如何完成。
我搜索了很多,但找不到任何關於userId共享的例子。
可以使用共享UserID的兩個應用程序訪問像drawables或字符串的其他資源嗎?有共享UserID的兩個應用程序
他們可以訪問彼此的資產嗎?
他們可以啓用或禁用其他組件嗎?
如果有這些可能,請說明如何完成。
我搜索了很多,但找不到任何關於userId共享的例子。
您可以在AndroidManifest.xml中使用android:sharedUserId
讓您的應用程序與另一個應用程序共享相同的用戶標識。
機器人:sharedUserId
,將與其他 應用程序共享的一個Linux用戶ID的名稱。默認情況下,Android會爲每個應用程序分配自己的 唯一用戶標識。但是,如果對於兩個或更多應用程序將此屬性設置爲相同的值 ,則它們將共享相同的ID - ,前提是它們也由相同的證書籤名。 具有相同用戶標識的應用程序可以訪問彼此的數據,並且如果需要,可以在相同的過程中運行。
請注意,它們需要由相同的證書籤名。
兩個應用程序共享相同的用戶ID可能會訪問彼此的資源。
例如:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.shareusertesta"
android:versionCode="1"
android:versionName="1.0"
android:sharedUserId="com.example">
那麼我們可以初始化由com.example
新的上下文:
Context friendContext = this.createPackageContext("com.example",Context.CONTEXT_IGNORE_SECURITY);
,並訪問應用程序的一些資源:
HTTP的friendContext.getResources().getString(id);
friendContext.getResources().getDrawable(id);
friendContext.registerReceiver(...);
我得到'android.content.pm.PackageManager $ NameNotFoundException:未找到應用程序包com.example'。你的意思是全包名嗎? – coyer 2016-11-28 09:51:41
重複: //stackoverflow.com/questions/9783765/what-is-shareduserid-in-androidhow-can-i-used-shareduserid – bleater 2013-11-04 23:42:16