我从使用 android L 预览版的设备收到一些崩溃报告,问题是
Caused by: java.lang.RuntimeException: [17, ...... ] recycled twice!
at android.content.res.TypedArray.recycle(TypedArray.java:869)
看不到代码,因为Android L还没有,如何查看TypedArray是否已经被回收了?
我实际上发现对 recycle 的调用被调用了两次,但无论如何,为什么现在抛出异常会破坏可能旧的工作代码(即使调用 recycle 两次是不正确的)。
最佳答案
由于 L 中 TypedArray 池的变化,调用 TypedArray.recycle() 两次或在 recycle() 之后调用 TypedArray 上的 getter 是不安全的。这从来都不是正确的应用程序行为,并且在 L 之前可能引入了细微的错误。
关于android - 回收两次! TypedArray 中的运行时异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26336972/