Android 您可以在应用程序外部更改共享首选项吗?

Android 您可以在应用程序外部更改共享首选项吗?,android,sharedpreferences,Android,Sharedpreferences,有没有一种方法可以让用户在没有我的应用程序帮助的情况下处理共享的首选项值?例如,我可以将许可证详细信息存储在此处,而不必担心用户提取和复制许可证密钥吗?如果共享首选项的上下文是私有的(您在创建时定义它),则只有使用root访问权限,才可以访问它们,而不是创建它们的应用程序。共享首选项存储在应用程序的空间中,卸载应用程序时,首选项也将消失 因此,通常用户无法获取这些值,它们是私有存储的 然而,通过根访问和一个简单的内存搜索应用程序,用户可以访问数据。(最好将这些东西存储在服务器端。)访问共享首选项

有没有一种方法可以让用户在没有我的应用程序帮助的情况下处理共享的首选项值?例如,我可以将许可证详细信息存储在此处,而不必担心用户提取和复制许可证密钥吗?

如果共享首选项的上下文是私有的(您在创建时定义它),则只有使用root访问权限,才可以访问它们,而不是创建它们的应用程序。

共享首选项存储在应用程序的空间中,卸载应用程序时,首选项也将消失

因此,通常用户无法获取这些值,它们是私有存储的


然而,通过根访问和一个简单的内存搜索应用程序,用户可以访问数据。(最好将这些东西存储在服务器端。)

访问共享首选项非常容易。 您所需要的只是一个具有根访问权限的文件浏览器,它们保存在
/data/data/YOUR_APP_NAME/shared_prefs/YOUR_APP_NAME_preferences.xml中的xml文件中


对于许可,您应该使用google play的许可证检查或在远程服务器上执行您自己的检查。

通过root访问,只要知道内存位置,您就可以进行读写操作。不过,这并不完全简单。@BasvanStein有一些应用程序可以帮助实现这一过程,比如CheatDroid。。。做到这一点并不困难。是的,我知道,但通常这些应用程序使用的事实是价值正在改变,或者你知道价值(部分),如果不是这样的话,那就困难多了。