Android 为什么更新应用程序会清除其默认值?

Android 为什么更新应用程序会清除其默认值?,android,Android,假设您有一个应用程序,它声明自己能够处理类似于手机的系统意图,并且用户选择它作为默认应用程序。当市场更新应用程序时,为什么会清除默认值?有没有办法防止这种情况发生,因此,如果我想让Dialer 1.0来处理电话按钮,Dialer 2.0仍会这样做,而无需我重新选择它。默认值映射到应用程序中的特定实现(实现活动的类的名称),当应用程序更新时,这些默认值可能会更改。为了保守和安全,传统上,平台在更新应用程序时会清除这些内容,因为它们可能会更改,并导致引用不再存在的活动。在应用程序中,您无法阻止这种情

假设您有一个应用程序,它声明自己能够处理类似于手机的系统意图,并且用户选择它作为默认应用程序。当市场更新应用程序时,为什么会清除默认值?有没有办法防止这种情况发生,因此,如果我想让Dialer 1.0来处理电话按钮,Dialer 2.0仍会这样做,而无需我重新选择它。

默认值映射到应用程序中的特定实现(实现活动的类的名称),当应用程序更新时,这些默认值可能会更改。为了保守和安全,传统上,平台在更新应用程序时会清除这些内容,因为它们可能会更改,并导致引用不再存在的活动。在应用程序中,您无法阻止这种情况发生。

默认值映射到应用程序中的特定实现(实现活动的类的名称),当应用程序更新时,这些默认值可能会更改。为了保守和安全,传统上,平台在更新应用程序时会清除这些内容,因为它们可能会更改,并导致引用不再存在的活动。您无法在应用程序中阻止这种情况发生。

但在安装时,您知道新APK提供的活动列表,以及以前设置的默认值。那么,在目标活动仍然存在的情况下,是否可以保留默认值?它可以更智能,但目前不是。但是在安装时,您知道新APK提供的活动列表,以及以前设置的默认值是什么。那么,在目标活动仍然存在的情况下,是否可以保留默认值呢?它可以变得更智能,但目前不是。