在更大的更新后删除Android应用程序的所有用户数据

在更大的更新后删除Android应用程序的所有用户数据,android,google-play,Android,Google Play,我彻底改造了一个应用程序。在我的设备和模拟器上测试了一段时间。该应用程序运行良好。然而,当我通过Android market更新应用程序时,我的用户经历了崩溃 由于无法正确调试此过程,我估计崩溃是由未从设备(可能是从onsavedstate捆绑包)中删除的旧数据引起的 有没有一种方法可以在不需要用户手动的情况下进行“完全/彻底”的重新安装 致意 Johe当给您带来麻烦的变量在下一次OnPause中被正确的类型覆盖时,类强制转换问题应该消失了。您可以保留一个变量来保存版本号,如果从OnResume

我彻底改造了一个应用程序。在我的设备和模拟器上测试了一段时间。该应用程序运行良好。然而,当我通过Android market更新应用程序时,我的用户经历了崩溃

由于无法正确调试此过程,我估计崩溃是由未从设备(可能是从onsavedstate捆绑包)中删除的旧数据引起的

有没有一种方法可以在不需要用户手动的情况下进行“完全/彻底”的重新安装

致意
Johe

当给您带来麻烦的变量在下一次OnPause中被正确的类型覆盖时,类强制转换问题应该消失了。您可以保留一个变量来保存版本号,如果从OnResume中检索到的变量较旧,则可以跳过其他保存的值并使用默认值。

如果在下一次OnPause中使用正确的类型覆盖给您带来麻烦的变量,则类转换问题应该消失。您可以保留一个变量来保存版本号,如果从OnResume中检索到的变量较旧,您可以跳过其他保存的值并使用默认值。

我怀疑您的假设。有许多微妙的事情可能会导致不同设备上的崩溃,特别是如果您对其进行了彻底改造。重新。根据您的旧数据理论,您的应用程序、存储文件或使用首选项是否有任何SQLite数据库?如果您已成功将错误锁定到旧数据,则可以输入代码以检查旧数据是否存在以及是否已删除。例如,如果您有一个数据库,那么在安装时删除这些表并重新创建它们。通过查看ressource文件(在设备或emulator的目录/data/data/YOUR_APPLICATION_PACKAGE/pref_files中),我发现我将一个首选项值从int改为string,但保留了标识符。。。改变了这一点,现在它工作了。谢谢你的提示!我怀疑你的假设。有许多微妙的事情可能会导致不同设备上的崩溃,特别是如果您对其进行了彻底改造。重新。根据您的旧数据理论,您的应用程序、存储文件或使用首选项是否有任何SQLite数据库?如果您已成功将错误锁定到旧数据,则可以输入代码以检查旧数据是否存在以及是否已删除。例如,如果您有一个数据库,那么在安装时删除这些表并重新创建它们。通过查看ressource文件(在设备或emulator的目录/data/data/YOUR_APPLICATION_PACKAGE/pref_files中),我发现我将一个首选项值从int改为string,但保留了标识符。。。改变了这一点,现在它工作了。谢谢你的提示!