gpt4 book ai didi

android - microSD 加载延迟导致首次加载时出现空值

转载 作者:行者123 更新时间:2023-11-29 00:33:29 25 4
gpt4 key购买 nike

我将各种用户帐户存储在保存在 microSD 卡文件中的自定义对象 ArrayList 中,并使用以下方法加载该文件:

public static ArrayList<User> loadAllUsers() {
if (storageAvailable()) {
ArrayList<User> myList = new ArrayList<User>();
try {
FileInputStream myListUsersSaved = new FileInputStream(baseDir
+ File.separator + fileName);

ObjectInputStream myListUsers = new ObjectInputStream(
myListUsersSaved);

myList = (ArrayList<User>) myListUsers.readObject();

myListUsers.close();

} catch (Exception exc) {
exc.printStackTrace();
}

return myList;
} else {
return null;
}

}

这通常工作正常,但不幸的是在一些慢速设备中,第一次加载尝试失败,可能是由于延迟访问 microSD 上的数据,当我打开加载保存的各种配置文件的 Activity 时,第一次加载方法返回 null 并且这看起来是空的,如果我第二次尝试重新加载 Activity ,没问题。

有什么建议可以避免这个问题吗?

最佳答案

延迟只发生在一些罕见的修改固件中,这些固件将所有设备内存移动到 microSD。解决方法是返回稳定固件或者加载两倍的方法。

关于android - microSD 加载延迟导致首次加载时出现空值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14033571/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com