我们正在Android COSU下运行 kiosk应用,并且遇到了越来越多的内存问题。
设备在MDM下管理和部署。有时,一个或多个设备对用户交互的响应速度变慢,有时甚至使自助服务终端应用崩溃。运行时指出,崩溃是由丢失的资源(视图)引起的,该资源确实存在,但似乎已从内存中删除。重新加载应用程序后,发现资源很好。这似乎是哪个设备以及何时使用的随机设备。
2019-01-17 13:29:24.627 22959-22959/? E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.ablekiosk.vmem, PID: 22959
java.lang.IllegalArgumentException: No view found for id 0x7f0800bb (com.ablekiosk.vmem:id/fragment_content_settings_detail) for fragment FragmentSettingsDetailDevice{e200bd3 #0 id=0x7f0800bb}
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:987)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1171)
at android.app.BackStackRecord.run(BackStackRecord.java:815)
at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1578)
at android.app.FragmentManagerImpl$1.run(FragmentManager.java:483)
at android.os.Handler.handleCallback(Handler.java:836)
at android.os.Handler.dispatchMessage(Handler.java:103)
at android.os.Looper.loop(Looper.java:203)
at android.app.ActivityThread.main(ActivityThread.java:6251)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1063)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:924)
信息亭模式的应用始终位于前景中,或者至少应该位于前景中,并且始终处于横向状态-它们是固定安装的。
除了视图问题外,变量有时在不应该为null时为null,因此我倾向于认为这是Android的内存管理。
如何防止Android在信息亭应用上清除正在运行的应用(看起来非常激进)的内存?