在启动我的应用程序时,我在严格模式下得到以下异常。就在我的登录活动关闭之后,就在我的主活动(包含一个SupportMapFragment )被显示之前。
10-29 16:11:22.605: E/StrictMode(1121):在附加堆栈跟踪中获取资源,但从未释放。有关避免资源泄漏的信息,请参阅java.io.Closeable。 10-29 16:11:22.605: E/StrictMode(1121):java.lang.Throwable:显式终止方法“close”未调用 10-29 16:11:22.605: E/StrictMode(1121):at dalvik.system.CloseGuard.open(CloseGuard.java:184) 10-29 16:11:22.605: E/StrictMode(1121):at java.io.RandomAccessFile.(RandomAccessFile.java:128) 10-29 16:11:22.605: E/StrictMode(1121):at maps.d.a.(未知来源) 10-29 16:11:22.605: E/StrictMode(1121):at maps.d.b.a(未知来源) 10-29 16:11:22.605: E/StrictMode(1121):at maps.m.h.a(未知来源) 10-29 16:11:22.605: E/StrictMode(1121):at maps.m.a.a(未知来源) 10-29 16:11:22.605: E/StrictMode(1121):at maps.m.u.a(未知来源) 10-29 16:11:22.605: E/StrictMode(1121):at maps.k.n.c(未知来源) 10-29 16:11:22.605: E/StrictMode(1121):at maps.ao.b.run(未知来源) 10-29 16:11:22.605: W/System.err(1121):StrictMode VmPolicy违反POLICY_DEATH;关闭。
它似乎与GoogleMap的主要活动有关。但到底有什么需要关闭呢?任何想法/想法都将不胜感激。
发布于 2014-01-15 12:33:56
添加此方法:
public static void enableStrictMode(Context context) {
StrictMode.setThreadPolicy(
new StrictMode.ThreadPolicy.Builder()
.detectDiskReads()
.detectDiskWrites()
.detectNetwork()
.penaltyLog()
.build());
StrictMode.setVmPolicy(
new StrictMode.VmPolicy.Builder()
.detectLeakedSqlLiteObjects()
.penaltyLog()
.build());
}和enableStrictMode(this);在super.onCreate(savedInstanceState);之前在onCreate。在我的问题上,这个解决方案是有帮助的。
发布于 2013-10-29 21:35:34
Stacktrace只显示了v2的代码,因此您将无法对其根本原因做太多的工作。
我建议在gmaps api-问题上发布一个关于这个bug的问题。
同时,在严格模式下禁用这种检查。
发布于 2014-06-26 07:54:49
当我试图运行我的应用程序时,我也遇到了类似的问题。解决办法很简单:我只需要在手机上激活互联网。也许你应该拥有你的手机所使用的所有资源。全球定位系统( GPS ),互联网)启动时,你运行的应用程序。
https://stackoverflow.com/questions/19661383
复制相似问题