重命名程序包时是否删除内部数据

时间:2019-02-21 10:45:30

标签: android

在android中,应用将其内部数据(例如文件,首选项,数据库)保存在“ Android / data / com / APP_NAME /”文件夹及其子文件夹中。

显然,如果我将应用程序从APP_NAME重命名为NEW_NAME,则会创建新文件夹(“ Android / data / com / NEW_NAME /”),因此无法访问以前应用程序位置的数据。但是会保留还是删除它?

我指出,我说的是软件包重命名,而不是删除应用程序,而正如我测试的那样,重命名应用程序的某些配置会保留。

因此,随之而来的问题是:如果我将应用程序从NEW_NAME重命名为APP_NAME,那么-打包文件夹(及其中的所有文件)是否可以再次访问-或被覆盖?

2 个答案:

答案 0 :(得分:0)

由用户创建的数据将保留在适当的文件夹中,直到用户自己将其删除为止。 如果重命名该应用程序,则将创建新文件夹,如果再次将其命名为以前的名称,则可以再次访问旧数据。

仍然可以按照以下步骤进行“包重命名”

您可以在任何时间点从Android Studio重命名软件包。

您可以按照以下步骤重命名程序包:

  1. 在“项目”视图的工具栏上单击Gear Icon,然后取消选择“隐藏空的中间包”。之后,所有的包文件夹将被拆分。
  2. 右键单击需要重命名的文件夹,然后单击“重构->重命名”并提供新的程序包名称,然后单击“ 重命名程序包”按钮。

文件夹名称将被更改,不会删除任何项目

希望有帮助。

答案 1 :(得分:0)

  

我指出,我说的是软件包重命名,而不是删除应用程序,而正如我测试的那样,重命名应用程序的某些配置会保留。

好的。应用程序ID(“程序包”)是应用程序在设备上以及在Play商店等发行渠道中的唯一标识符。当用户使用重命名的软件包安装应用程序时,旧的应用程序将保持安装状态。

IOW,您所说的“程序包重命名”实际上是“编写完全不同的应用程序”。不同的应用程序具有与原始应用程序相同的元素这一事实并不重要。如果应用程序ID不同,则它们是不同的应用程序。

  

显然,如果我将应用程序从APP_NAME重命名为NEW_NAME,则会创建新文件夹(“ Android / data / com / NEW_NAME /”),因此无法访问以前应用程序位置的数据。但是会保留还是删除它?

这完全取决于用户。如果用户未安装APP_NAME应用,则文件将保留。如果用户卸载APP_NAME应用,则文件将被删除。

  

如果我将应用程序从NEW_NAME重命名回APP_NAME-打包文件夹(及其中的所有文件)是否可以再次访问-或被覆盖?

如果您的意思是“如果用户安装了APP_NAME的新版本”,则这再次取决于用户是否保留了已安装的旧APP_NAME应用(如果这样,文件仍将存在)或用户已将其卸载(如果是这样,文件将被删除。)