2011-12-15 133 views
1

我将在Android电子市场上发布我的应用。这个应用程序创建一些文件/目录...发布更新删除旧版本的旧文件吗? 如果不是,首次启动升级后的应用程序时,Android上可用的最佳方法是用新文件替换旧文件?如何在Android中发布新版本时删除旧应用程序文件?

在IOS上,我解决了这个问题,创建一个空文件,指出应用程序的版本。当应用程序升级时,它将磁盘上的旧版本与应用程序版本进行比较,如果它们不同,则删除旧数据。但是我想知道是否有像SQLiteOpenHelper的'onUpgrade'方法这样的本地方法。

谢谢。

回答

1

并释放一个更新删除旧版本的旧文件?

在IOS我解决了这个问题,创建一个空文件,该文件表示应用程序的版本。当应用程序升级时,它将磁盘上的旧版本与应用程序版本进行比较,如果它们不同,则删除旧数据。

这是Android的好解决方案,恕我直言。

但我想知道是否有像SQLiteOpenHelper的'onUpgrade'方法的本地方法。

SQLiteOpenHelper做几乎正是你在iOS中的文件做了什么,除了不是一个空文件,也与版本数据的元数据表。

1

不,我不相信旧的文件升级时不会自动删除。有一个人纠正我,如果我错了。

但就创建一个这样的方法来删除之前更换旧的文件目录..

static public boolean deleteDirectory(File path) { 
if(path.exists()) { 
    File[] files = path.listFiles(); 
    if (files == null) { 
     return true; 
    } 
    for(int i=0; i<files.length; i++) { 
    if(files[i].isDirectory()) { 
     deleteDirectory(files[i]); 
    } 
    else { 
     files[i].delete(); 
    } 
    } 
} 
return(path.delete()); 

}

相关问题