2011-12-15 93 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()); 

}

相關問題