MTaaS导致资源泄漏

问题描述 投票:0回答:2

将二进制文件上传到Google Play后,根据Pre-Launch Report,我的应用程序在其中一个测试设备上由Android启动时关闭。

这个问题似乎是资源泄漏,原因是:

com.google.android.apps.mtaas.crawler.controller.remote.RemotePlatform

我设法发现MTaaS最有可能代表移动测试即服务。

我是否正确测试框架泄漏资源导致测试中止?

如何阻止MTaaS泄漏?

来自Strict Mode的Galaxy S9的完整设备日志:

注意:这是来自基于NDK的应用程序,只有很少的Java代码,并且不依赖于FireBase。

E/StrictMode(14355): A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks.
E/StrictMode(14355): java.lang.Throwable: Explicit termination method 'close' not called
E/StrictMode(14355):        at dalvik.system.CloseGuard.open(CloseGuard.java:223)
E/StrictMode(14355):        at android.os.ParcelFileDescriptor.<init>(ParcelFileDescriptor.java:192)
E/StrictMode(14355):        at android.os.ParcelFileDescriptor.<init>(ParcelFileDescriptor.java:181)
E/StrictMode(14355):        at android.os.ParcelFileDescriptor.createPipe(ParcelFileDescriptor.java:425)
E/StrictMode(14355):        at com.google.android.apps.mtaas.crawler.common.base.IOUtils.makeParcelAsync(IOUtils.java:1)
E/StrictMode(14355):        at com.google.android.apps.mtaas.crawler.platform.ScreenState.writeScreenElementsToParcel(ScreenState.java:141)
E/StrictMode(14355):        at com.google.android.apps.mtaas.crawler.platform.ScreenState.writeToParcel(ScreenState.java:60)
E/StrictMode(14355):        at com.google.android.apps.mtaas.crawler.platform.ParcelableScreenState.writeToParcel(ParcelableScreenState.java:6)
E/StrictMode(14355):        at android.os.Parcel.writeParcelable(Parcel.java:1746)
E/StrictMode(14355):        at android.os.Parcel.writeValue(Parcel.java:1652)
E/StrictMode(14355):        at android.os.Parcel.writeArrayMapInternal(Parcel.java:793)
E/StrictMode(14355):        at android.os.BaseBundle.writeToParcelInner(BaseBundle.java:1506)
E/StrictMode(14355):        at android.os.Bundle.writeToParcel(Bundle.java:1181)
E/StrictMode(14355):        at android.os.Parcel.writeBundle(Parcel.java:833)
E/StrictMode(14355):        at android.os.Message.writeToParcel(Message.java:594)
E/StrictMode(14355):        at android.os.IMessenger$Stub$Proxy.send(IMessenger.java:84)
E/StrictMode(14355):        at android.os.Messenger.send(Messenger.java:57)
E/StrictMode(14355):        at com.google.android.apps.mtaas.crawler.controller.remote.RemotePlatform.sendMessage(RemotePlatform.java:39)
E/StrictMode(14355):        at com.google.android.apps.mtaas.crawler.controller.remote.RemotePlatform.sendActionResultsMessage(RemotePlatform.java:64)
E/StrictMode(14355):        at com.google.android.apps.mtaas.crawler.controller.remote.RemotePlatform.handlePerformActionMessage(RemotePlatform.java:24)
E/StrictMode(14355):        at com.google.android.apps.mtaas.crawler.controller.remote.RemotePlatform.access$300(RemotePlatform.java:88)
E/StrictMode(14355):        at com.google.android.apps.mtaas.crawler.controller.remote.RemotePlatform$ControllerMessageHandler.handleMessage(RemotePlatform.java:8)
E/StrictMode(14355):        at android.os.Handler.dispatchMessage(Handler.java:105)
E/StrictMode(14355):        at android.os.Looper.loop(Looper.java:164)
E/StrictMode(14355):        at android.os.HandlerThread.run(HandlerThread.java:65)
W/System.err(14355): StrictMode VmPolicy violation with POLICY_DEATH; shutting down.
java android testing google-play-console resource-leak
2个回答
1
投票

这看起来可能是Google Play预发布报告抓取工具中的错误。我可以通知相应的团队,但一般情况下如果发生这种情况,您可以通过Play控制台支持让他们知道。您可以通过Google Play控制台中的帮助菜单与他们联系。这是问号“?”的背后。图标。


0
投票

我是MTaaS的一员并正在调查此问题。但我没有特定于此问题/抓取的任何详细信息(例如,logcat或包名称)。

这个堆栈跟踪是否在PLR上显示为失败原因,或者是从logcat中提取以帮助我们调试?如果是后者,你可以分享PLR上出现的堆栈跟踪吗?

© www.soinside.com 2019 - 2024. All rights reserved.