MemoryLeakMonitor.jar 不存在! (华为Phone)
MemoryLeakMonitor.jar is not exist! (Huawei Phone)
所以我有一个健身应用程序,它涉及使用存储所有信息的数据库。
到目前为止,我一直使用虚拟设备来运行这个应用程序。
每次我更改此应用程序数据库时,我都会从每个模拟器中擦除数据,增加数据库版本号,然后 运行 应用程序,一切正常。
前几天我决定使用我的华为 P20 Pro 而不是模拟器,我 运行 这个应用程序运行得很好。
但是,在对数据库进行更改(并增加版本号)后,数据库不再在我的 P20 Pro 上初始化,我收到以下错误消息:
E/AwareLog: AtomicFileUtils: readFileLines file not exist: android.util.AtomicFile@b9caac1
E/MemoryLeakMonitorManager: MemoryLeakMonitor.jar is not exist!
E/AwareLog: AtomicFileUtils: readFileLines file not exist: android.util.AtomicFile@a6b9e54
我花了几个小时在网上搜索问题的原因,但运气不佳。
收到同样错误信息的好像都是华为用户...
(不知道有没有关系)
有谁知道错误消息的含义,以及为什么我无法在我的物理设备上初始化我的应用程序数据库?
数据库Class(相关代码)
@Database(entities = {Junction.class, Exercise_Workout_Goals.class, Exercises.class, ExerciseType.class, Workouts.class,
WorkoutType.class, Log_Entries.class, ChildExercises.class, ChildParentExerciseJunction.class}, version = 53, exportSchema = false)
public static synchronized ExerciseDatabase getInstance(Context context) {
if (instance == null) {
instance = Room.databaseBuilder(context.getApplicationContext(),
ExerciseDatabase.class, "exercise_database")
.fallbackToDestructiveMigration()
.addCallback(roomCallback)
.build();
}
return instance;
}
最好在重新安装应用时同时清除缓存和应用数据。
当您的应用程序想要再次访问数据时使用缓存。
应用程序数据存储设置和数据库等信息。
可能,您的应用程序引用了旧数据库 and/or 用户设置,当重新安装应用程序时,它可能具有不同的 table 和结构,然后导致应用程序崩溃。
在您的情况下,删除应用程序数据有效(执行此操作时,它也会清除缓存)。
另请参阅:
https://www.androidpolice.com/2020/05/26/clear-app-cache-data-android/
所以我有一个健身应用程序,它涉及使用存储所有信息的数据库。
到目前为止,我一直使用虚拟设备来运行这个应用程序。
每次我更改此应用程序数据库时,我都会从每个模拟器中擦除数据,增加数据库版本号,然后 运行 应用程序,一切正常。
前几天我决定使用我的华为 P20 Pro 而不是模拟器,我 运行 这个应用程序运行得很好。
但是,在对数据库进行更改(并增加版本号)后,数据库不再在我的 P20 Pro 上初始化,我收到以下错误消息:
E/AwareLog: AtomicFileUtils: readFileLines file not exist: android.util.AtomicFile@b9caac1
E/MemoryLeakMonitorManager: MemoryLeakMonitor.jar is not exist!
E/AwareLog: AtomicFileUtils: readFileLines file not exist: android.util.AtomicFile@a6b9e54
我花了几个小时在网上搜索问题的原因,但运气不佳。
收到同样错误信息的好像都是华为用户...
(不知道有没有关系)
有谁知道错误消息的含义,以及为什么我无法在我的物理设备上初始化我的应用程序数据库?
数据库Class(相关代码)
@Database(entities = {Junction.class, Exercise_Workout_Goals.class, Exercises.class, ExerciseType.class, Workouts.class,
WorkoutType.class, Log_Entries.class, ChildExercises.class, ChildParentExerciseJunction.class}, version = 53, exportSchema = false)
public static synchronized ExerciseDatabase getInstance(Context context) {
if (instance == null) {
instance = Room.databaseBuilder(context.getApplicationContext(),
ExerciseDatabase.class, "exercise_database")
.fallbackToDestructiveMigration()
.addCallback(roomCallback)
.build();
}
return instance;
}
最好在重新安装应用时同时清除缓存和应用数据。
当您的应用程序想要再次访问数据时使用缓存。
应用程序数据存储设置和数据库等信息。 可能,您的应用程序引用了旧数据库 and/or 用户设置,当重新安装应用程序时,它可能具有不同的 table 和结构,然后导致应用程序崩溃。 在您的情况下,删除应用程序数据有效(执行此操作时,它也会清除缓存)。 另请参阅: https://www.androidpolice.com/2020/05/26/clear-app-cache-data-android/