我想更改首选项文件中的参数名称。我的应用程序的新版本需要新名称。如果已经安装了旧版本,它将创建一个包含旧参数名称的首选项文件。更新后,最新版本将查找新名称,而不是旧名称。因此我需要将旧名称更改为新名称。
一个明显的解决方案是新版本检查首选项文件中的参数名称并在必要时更改它。这可以在 onCreate()
方法中完成。但我更愿意避免每次启动应用程序时都进行检查的负担。如果可以在更新应用程序时只完成一次,那就更好了。
所以我想要的是在更新过程中清理首选项。是否可以在安装过程中运行一些 Java 代码?除了将新应用程序文件复制到旧应用程序文件之外,更新过程还能做些什么吗?如果没有,是否有任何其他方法可以在更新时对首选项文件进行此类更改?请注意,虽然我想更改首选项文件中参数的名称,但我需要保留其值。
最佳答案
在 API12+ 上,您可以在为操作 Intent.ACTION_MY_PACKAGE_REPLACED
注册的某些 BroadcastReceiver
中执行更新工作 https://developer.android.com/reference/android/content/Intent.html#ACTION_MY_PACKAGE_REPLACED
如果您在那里实现更新,您可以在 API12+ 的 Application.onCreate()
等地方放弃所有更新调用。
因此只有旧手机需要在每次启动时检查更新。
关于android - 在更新时在首选项文件中做一些清理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18573353/