Tencent / libpag

The official rendering library for PAG (Portable Animated Graphics) files that renders After Effects animations natively across multiple platforms.
https://pag.io
Other
4.95k stars 451 forks source link

偶现native崩溃 #1639

Open PJYGit opened 1 year ago

PJYGit commented 1 year ago

【版本信息】

4.1.49

【平台信息】

Android 原生

【崩溃信息】

signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr -------- Abort message: 'Scudo ERROR: corrupted chunk header at address 0x200007bbb261370 '

image

at org.libpag.PAGPlayer.nativeSetSurface(Native method) at org.libpag.PAGPlayer.setSurface(PAGPlayer.java:2) at org.libpag.PAGView.onSurfaceTextureDestroyed(PAGView.java:1) at android.view.TextureView.releaseSurfaceTexture(TextureView.java:266) at android.view.TextureView.onDetachedFromWindowInternal(TextureView.java:237) at android.view.View.dispatchDetachedFromWindow(View.java:21218) at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:4154) at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:4154) at android.view.ViewGroup.dispatchDetachedFromWindow(ViewGroup.java:4154) ... repeated 0 times at android.view.ViewGroup.removeViewInternal(ViewGroup.java:5796) at android.view.ViewGroup.removeViewAt(ViewGroup.java:5743) at androidx.recyclerview.widget.RecyclerView$5.removeViewAt(RecyclerView.java:4) at androidx.recyclerview.widget.ChildHelper.removeViewAt(ChildHelper.java:5) at androidx.recyclerview.widget.RecyclerView$LayoutManager.removeViewAt(RecyclerView.java:2) at androidx.recyclerview.widget.RecyclerView$LayoutManager.removeAndRecycleViewAt(RecyclerView.java:2) at androidx.recyclerview.widget.LinearLayoutManager.recycleChildren(LinearLayoutManager.java:1) at androidx.recyclerview.widget.LinearLayoutManager.recycleViewsFromStart(LinearLayoutManager.java:10) at androidx.recyclerview.widget.LinearLayoutManager.recycleByLayoutState(LinearLayoutManager.java:6) at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:4) at androidx.recyclerview.widget.LinearLayoutManager.scrollBy(LinearLayoutManager.java:7) at androidx.recyclerview.widget.LinearLayoutManager.scrollVerticallyBy(LinearLayoutManager.java:2) at androidx.recyclerview.widget.RecyclerView.scrollStep(RecyclerView.java:6) at androidx.recyclerview.widget.RecyclerView$ViewFlinger.run(RecyclerView.java:24) at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1623) at android.view.Choreographer.doCallbacks(Choreographer.java:1141) at android.view.Choreographer.lambda$new$0$Choreographer(Choreographer.java:274) at android.view.Choreographer$$ExternalSyntheticLambda0.run(unavailable:-1) at android.os.Handler.handleCallback(Handler.java:955) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loopOnce(Looper.java:206) at android.os.Looper.loop(Looper.java:296) at cx4.c$a.run(SentryPlus.java:1) at android.os.Handler.handleCallback(Handler.java:955) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loopOnce(Looper.java:206) at android.os.Looper.loop(Looper.java:296) at android.app.ActivityThread.main(ActivityThread.java:9000) at java.lang.reflect.Method.invoke(Native method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:569) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:976)

【系统分布】

只在Android 12出现

PJYGit commented 1 year ago

版本分布部分忽略,各版本都有

kevingpqi123 commented 1 year ago

建议查看下附上完整的 crash 信息,首先排查下是否有内存不足相关的 log

PJYGit commented 1 year ago

建议查看下附上完整的 crash 信息,首先排查下是否有内存不足相关的 log

还需要哪些崩溃信息嘞 目前java层来看,都是上述崩溃栈,在recyclerview中使用,滑出屏幕TextureView.releaseSurfaceTexture后发生的,看了下用户的free memory size都比较充足,有其他怀疑原因不

wolongzhuge commented 3 months ago

现在这个问题解决了吗,我也遇到了一样的问题,堆栈跟上面的完全一样