这可能听起来像一个模糊的问题,但我不得不问。
我是初学Android开发人员,刚刚开始了解android中进程间通信的工作。 如果在2个应用程序中使用相同的shareduserid,则他们有权访问彼此的数据,这意味着我可以反编译任何apk,从清单中找出其shareduserid并使用相同的shareduserid创建我的应用程序以访问其数据。
我错过了什么吗?
如果我想在未来创建2个应用程序(它们共同工作,从而暴露shareduserid),我应该如何保证我的数据安全?
答案 0 :(得分:1)
共享用户ID由证书签名强制实施。仅当应用程序使用相同证书签名时,平台才会授予/分配相同的用户ID。 Ref:
机器人:sharedUserId
将与其他应用程序共享的Linux用户标识的名称。默认情况下,Android会为每个应用程序分配自己唯一的用户ID。但是,如果此属性设置为两个或多个应用程序的相同值,则它们将共享相同的ID - ,前提是它们也由相同的证书签名。具有相同用户ID的应用程序可以访问彼此的数据,并且如果需要,可以在同一进程中运行。