我从使用 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/