我收到了关于这句话的警告:
editor.commit();
因为1.1.0建议使用.apply(),因为它在后台工作,而.commit()是立即编写的。
但是apply需要API9或更高版本;commit已经存在很久了。
我倾向于不做改变,因为我只有几个偏好。
此外,如果apply在旧设备上执行,会发生什么情况?
发布于 2015-05-26 04:37:16
但apply需要API9及更高版本
目前,~99.7% of Android devices accessing the Play Store are running API Level 10 or higher。
我倾向于不做更改,因为我只有几个偏好。
然后,在您自己的线程中包装一个对commit()的调用,以便在后台线程上执行磁盘I/O。
如果apply在旧设备上执行,会发生什么情况?
如果您的compileSdkVersion是9或更高,并且minSdkVersion低于9,并且您使用的是apply(),那么构建工具应该会指出这是一个错误。如果你坚持下去,你会崩溃的,很可能是因为VerifyError。
https://stackoverflow.com/questions/30445627
复制相似问题