安卓应用安全指南
1. 内容提供者与包名处理
在安卓开发中,通过在清单文件里运用 android:sharedUserId 属性,多个用相同密钥签名的应用可以拥有相同的 UID。不过,在查找时可能会获取到多个包名。所以,在提供者的公开文档里,要明确指出使用该 API 的应用不能和其他应用共享 UID。
获取应用的包名之后,在查询数据库时就能使用它。具体操作步骤如下:
- 插入数据 :每次插入时,要确保在某一列填充调用应用的包名。
- 查询、更新和删除数据 :修改选择条件和选择参数,让包名前置。示例代码如下:
private String prependSelection(String selection) {
return Columns.PACKAGE_NAME + " = ? AND (" + selection + ")";
}
private String[] prependSelectionArgs(String[] selectionArgs) {
String[] newSelArgs = new String[selectionArgs.length + 1];
System.arraycopy(selectionArgs, 0, newSelArgs, 1, selectionArgs.length);
newSelArgs[0] = getPackageNameForCaller(getContext());
return newSelAr
超级会员免费看
订阅专栏 解锁全文
1290

被折叠的 条评论
为什么被折叠?



