Pra*_*ham 3 android memory-management android-layout
我面临着记忆力低的问题.Low memory:no more background process这是场景.
我正在使用一个从字符串数组中获取数据的列表,它具有自定义背景,单击项目,列表获取另一个字符串数组以显示为第二级或第三级.用数据库写的三个级别的信息.
在第三级之后,还有两个级别可以从Web服务获取数据,
这导致低内存错误.
我该如何摆脱解决方案?
编辑:在进行了一些挖掘后,我发现GC正在尝试(杀死或)重启,以防其已经崩溃的com.android.inputmethod.latin/.latinIME服务.一个值得注意的一点是应用程序是用法语和意大利语翻译的,但是这个屏幕没有任何翻译文本,这个信息有帮助吗?
编辑2:在对traceview进行详细研究后,我发现所有文本视图都在其中应用了自定义字体.(调用TypeFace.createFromAsset())IMO导致崩溃.
问题在于我必须保留字体....
可以避免崩溃并且有字体吗?(因为我认为答案是否定的:但仍在等待一些意见)
编辑3:删除自定义字体后,应用程序的性能要好得多.因此,我可以怀疑字体是这里唯一的罪魁祸首.这就是我编辑问题的原因.我使用的字体是helvetica.
使用外部字体会导致应用程序崩溃或内存不足吗?如果是,你能更详细地描述原因吗?
谢谢
Cam*_*ron 11
如果您使用的代码类似于:
Typeface font = Typeface.createFromAsset(getContext().getAssets(),
"fonts/Helvetica.ttf");
Run Code Online (Sandbox Code Playgroud)
尝试将"font"设为全局变量,以便只加载一次.否则可以反复加载,快速消耗内存.有关详细信息,请参阅此消息
| 归档时间: |
|
| 查看次数: |
3543 次 |
| 最近记录: |