给定一个仅在程序设置中使用的假设实用程序类:
class MyUtils {
private static MyObject myObject = new MyObject();
/*package*/static boolean doStuff(Params... params) {
// do stuff with myObject and params...
}
}
Run Code Online (Sandbox Code Playgroud)
当myObject不再被使用时,它会被垃圾收集,还是会在程序的生命周期中保留?
在我的应用程序中有一个静态变量,当我从外部浏览器返回我的应用程序时,该变量被设置为null.如果我正在启动的外部网页足够复杂,似乎应用程序或其中某些部分被杀死.
如果应用程序被完全杀死然后从主要活动中重新启动就可以了,但重新启动来自启动浏览器的活动 - 并且它并不意味着设置应用程序状态以便在访问空静态变量时崩溃.这对我来说是一个六分之一的设备问题所以我需要一些建议.
是否有设置标志以防止此行为?
我有个问题。在我的项目中,我有一些用户首选项存储在 SQL 数据库中。该表有大约 200 条记录,有 3 列。此记录不会更改,仅当用户更改并再次下载数据时。我想将它们放在 SharedPreferences 中,因为这样操作代码会更容易。现在的情况是有点困难,因为我使查询异步。现在,我的问题是:SharedPrefences 的记录数量是否太大?或者存放在那里应该没有问题?