A. android Picasso 的緩存怎麼清理
一、本地數據緩存分應用內、外緩存:
1、應用內部緩存,緩存被存儲在應用內部,具體位置:/data/data/應用包名/
a、清除緩存(/data/data/com.xxx.xxx/cache)
b、清除所有資料庫緩存(/data/data/com.xxx.xxx/database)
c、清除SharedPreference(/data/data/com.xxx.xxx/shared_prefs)
d、清除文件(/data/data/com.xxx.xxx/files)
2、應用外部緩存(/mnt/sdcard/android/data/com.xxx.xxx/cache)
3、自定義路徑文件,被存儲在設備的SD-CARD上,不同的設備和Android系統版本路徑不一樣,獲取路徑可以通過以下代碼:
1)、獲取內置SD卡路徑
B. android清除緩存會將資料庫清除嗎
android清除緩存的機制是清除.cache的文件或文件夾,不會清除sqlite資料庫的,
C. 安卓開發怎麼刪除資料庫中所有表數據
直接刪除資料庫,資料庫會自動重新創建
public class DatabaseHelper extends SQLiteOpenHelper {
private static DatabaseHelper mInstance = null;
/** 資料庫名稱 **/
public static final String DATABASE_NAME = "xys.db";
/** 資料庫版本號 **/
private static final int DATABASE_VERSION = 1;
/**資料庫SQL語句 添加一個表**/
private static final String NAME_TABLE_CREATE = "create table test("
+ "_id INTEGER PRIMARY KEY AUTOINCREMENT," + "name TEXT,"+"hp INTEGER DEFAULT 100,"+ "mp INTEGER DEFAULT 100,"
+ "number INTEGER);";
DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
/**單例模式**/
static synchronized DatabaseHelper getInstance(Context context) {
if (mInstance == null) {
mInstance = new DatabaseHelper(context);
}
return mInstance;
}
@Override
public void onCreate(SQLiteDatabase db) {
/**向數據中添加表**/
db.execSQL(NAME_TABLE_CREATE);
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
/**可以拿到當前資料庫的版本信息 與之前資料庫的版本信息 用來更新資料庫**/
}
/**
* 刪除資料庫
* @param context
* @return
*/
public boolean deleteDatabase(Context context) {
return context.deleteDatabase(DATABASE_NAME);
}
}
D. android 程序刪除時會不會刪除它創建的資料庫
看你的資料庫是怎麼寫的。
如果你用默認的SqliteHelper做資料庫開發時,資料庫的db文件是存在data/data/A/database裡面的。刪除
應用程序
時會把data/data/A全部刪除掉,因此你的sqlite數據也會刪除掉。
但是如果你的
資料庫文件
不是存儲在默認位置,比如
SD卡
上。那麼系統不會刪
E. 如何找到並清除所有Android設備上的SQLite資料庫文件呢
程序中只能操作自己的資料庫,或者根據privoder操作別的程序的,這樣除非別的程序放開了刪除數據功能才可以刪除。
F. android 清除緩存功能如何實現
Android清除本地數據緩存代碼:
/* * 文 件 名: DataCleanManager.java * 描 述: 主要功能有清除內/外緩存,清除資料庫,清除sharedPreference,清除files和清除自定義目錄 */
import java.io.File;
import android.content.Context;
import android.os.Environment;
/** * 本應用數據清除管理器 */
public class DataCleanManager {
/** * 清除本應用內部緩存(/data/data/com.xxx.xxx/cache) * * @param context */
public static void cleanInternalCache(Context context) {
deleteFilesByDirectory(context.getCacheDir());
}
/** * 清除本應用所有資料庫(/data/data/com.xxx.xxx/databases) * * @param context */
public static void cleanDatabases(Context context) {
deleteFilesByDirectory(new File("/data/data/"
+ context.getPackageName() + "/databases"));
}
/**
* * 清除本應用SharedPreference(/data/data/com.xxx.xxx/shared_prefs) * * @param
* context
*/
public static void cleanSharedPreference(Context context) {
deleteFilesByDirectory(new File("/data/data/"
+ context.getPackageName() + "/shared_prefs"));
}
/** * 按名字清除本應用資料庫 * * @param context * @param dbName */
public static void cleanDatabaseByName(Context context, String dbName) {
context.deleteDatabase(dbName);
}
/** * 清除/data/data/com.xxx.xxx/files下的內容 * * @param context */
public static void cleanFiles(Context context) {
deleteFilesByDirectory(context.getFilesDir());
}
/**
* * 清除外部cache下的內容(/mnt/sdcard/android/data/com.xxx.xxx/cache) * * @param
* context
*/
public static void cleanExternalCache(Context context) {
if (Environment.getExternalStorageState().equals(
Environment.MEDIA_MOUNTED)) {
deleteFilesByDirectory(context.getExternalCacheDir());
}
}
/** * 清除自定義路徑下的文件,使用需小心,請不要誤刪。而且只支持目錄下的文件刪除 * * @param filePath */
public static void cleanCustomCache(String filePath) {
deleteFilesByDirectory(new File(filePath));
}
/** * 清除本應用所有的數據 * * @param context * @param filepath */
public static void cleanApplicationData(Context context, String... filepath) {
cleanInternalCache(context);
cleanExternalCache(context);
cleanDatabases(context);
cleanSharedPreference(context);
cleanFiles(context);
for (String filePath : filepath) {
cleanCustomCache(filePath);
}
}
/** * 刪除方法 這里只會刪除某個文件夾下的文件,如果傳入的directory是個文件,將不做處理 * * @param directory */
private static void deleteFilesByDirectory(File directory) {
if (directory != null && directory.exists() && directory.isDirectory()) {
for (File item : directory.listFiles()) {
item.delete();
}
}
}
}
主要功能清除內/外緩存,清除資料庫,清除sharedPreference,清除files和清除自定義目錄
G. android中清除緩存時資料庫會被刪除嗎
android中清除緩存時資料庫不會被刪除。因為緩存只是應用程序留在手機存儲上的臨時文件,而資料庫是手機正式保存下來的文件。
android清除緩存的工作原理如圖:
H. 在android平台上要怎樣刪除一個已建資料庫
直接刪除文件就可以:File dbFile = new File("/data/data/你的包名/databases/你的資料庫名");dbFile.delete();應用對自己的目錄是有許可權刪除的
I. android 版本更新後資料庫會清空嗎
這個不會的,Android版本的更新會把之前的數據保存起來的。