据我所知,除了一些常规设置外,iOS应用只能看到自己创建的[NSUserDefaults standardUserDefaults]
内容。我想操作系统正在查看应用程序的标识符以确保这一点,对吧?
我想知道的是,是否有任何其他应用程序可以收集我的应用程序存储在用户默认设置中的信息。
答案 0 :(得分:8)
没有其他应用可以访问您的应用的用户默认设置中保存的信息。但这并不意味着无法获得信息。您可以将设备插入Xcode并运行您的应用。在设备下,您可以查看您的应用信息,并在那里列出用户默认值中保存的信息。
在那里保存敏感用户数据通常不是一个好主意,虽然不容易访问,但仍然可以访问。对于一般的非个人数据或设置,它确实不是一个大问题。您始终可以使用内置的钥匙串访问来存储用户名和密码信息,并将用户默认值用于您可能需要的任何其他内容。
在我的一个应用程序中,我将用户名和密码混合在一起以创建一个唯一的令牌。我将其保存在用户默认值中。它本身毫无价值,但这只是我做事的方式。祝你好运。
答案 1 :(得分:1)
不在非越狱设备上。但是,用户或对设备具有物理访问权限的其他人可以轻松地将应用程序的用户默认设置从设备中拉出;如果您可以在默认设置中存储用户名或身份验证令牌等内容,则应将更有价值的数据(如密码和财务信息)存储在钥匙串中或以其他方式加密。
答案 2 :(得分:0)
一般情况下,不允许其他应用查看其沙箱外的信息。但是,如果某人拥有越狱设备,则可以查看存储在NSUserDefaults中的信息,除非您对内容进行加密。