Failed to allocate a 8294412 byte allocation with 5472624 free bytes and 5MB until OOM
java.lang.OutOfMemoryError: Failed to allocate a 8294412 byte allocation with 5472624 free bytes and 5MB until OOM
at dalvik.system.VMRuntime.newNonMovableArray(Native Method)
at android.graphics.Bitmap.nativeCopy(Native Method)
at android.graphics.Bitmap.copy(Bitmap.java:592)
at org.autojs.autojs.core.image.ImageWrapper.clone(ImageWrapper.kt:146)
at org.autojs.autojs.runtime.api.Images.copy(Images.java:130)
at java.lang.reflect.Method.invoke(Native Method)
at org.mozilla.javascript.MemberBox.invoke(MemberBox.java:216)
at org.mozilla.javascript.NativeJavaMethod.call(NativeJavaMethod.java:211)
at org.mozilla.javascript.Interpreter.interpretLoop(Interpreter.java:1869)
at org.mozilla.javascript.Interpreter.interpret(Interpreter.java:1051)
at org.mozilla.javascript.InterpretedFunction.call(InterpretedFunction.java:87)
at org.mozilla.javascript.ContextFactory.doTopCall(ContextFactory.java:383)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3941)
at org.mozilla.javascript.InterpretedFunction.exec(InterpretedFunction.java:100)
at org.autojs.autojs.engine.RhinoJavaScriptEngine.doExecution(RhinoJavaScriptEngine.kt:71)
at org.autojs.autojs.engine.JavaScriptEngine.execute(JavaScriptEngine.java:24)
at org.autojs.autojs.engine.LoopBasedJavaScriptEngine.access$001(LoopBasedJavaScriptEngine.java:19)
at org.autojs.autojs.engine.LoopBasedJavaScriptEngine.lambda$execute$0(LoopBasedJavaScriptEngine.java:45)
at org.autojs.autojs.engine.LoopBasedJavaScriptEngine.$r8$lambda$I-xFIUoHN3n1hvGjYIMvKioppEM(LoopBasedJavaScriptEngine.java)
at org.autojs.autojs.engine.LoopBasedJavaScriptEngine$$ExternalSyntheticLambda0.run(D8$$SyntheticClass)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at org.autojs.autojs.engine.LoopBasedJavaScriptEngine.execute(LoopBasedJavaScriptEngine.java:68)
at org.autojs.autojs.engine.LoopBasedJavaScriptEngine.execute(LoopBasedJavaScriptEngine.java:38)
at org.autojs.autojs.execution.LoopedBasedJavaScriptExecution.doExecution(LoopedBasedJavaScriptExecution.java:45)
at org.autojs.autojs.execution.RunnableScriptExecution.execute(RunnableScriptExecution.java:40)
at org.autojs.autojs.execution.RunnableScriptExecution.execute(RunnableScriptExecution.java:34)
at org.autojs.autojs.execution.RunnableScriptExecution.run(RunnableScriptExecution.java:28)
at java.lang.Thread.run(Thread.java:761)
因为程序用到了多线程截图找色,所以每次找色都会用到Images.copy,在执行完后都会手动回收,但是这个6.5.0最新版好像并没有回收,当我多次重复停止-启动就会报下面的错误,我每次使用完copy方法都有recycle,不知道是哪里出的问题。