我正在寻找有关因调用而导致的重复日志打印的解决方案
BitmapFactory.decodeFile
。
在我的应用程序中,我有一个
ListView
每秒由计时器重绘。
ListView
有一个ImageView
,它从本地存储获取图像源(而不是从网络)
图像存储在:
filePath = /data/data/com.xxx.testlib/files/b22a1a294fd6e5ad3ea3d25b63c4c735.jpg
我正在使用以下代码重绘图像,并且工作正常。无一例外。
try
{
File filePath = context.getFileStreamPath(imageName);
if(filePath.exists()){
bMap = BitmapFactory.decodeFile(filePath.getPath());
}
}catch (Exception e)
{
e.printStackTrace();
}
但是当执行以下行时:
bMap = BitmapFactory.decodeFile(filePath.getPath());
我在日志中得到如下打印:
03-07 09:55:29.100: I/System.out(32663): Not a DRM File, opening notmally
03-07 09:55:29.105: I/System.out(32663): buffer returned
....
如何从打印中读取日志?
此外,每当执行此操作时,手机都会出现延迟。当手机
Waked up
并且我们使用此代码返回活动时,这种性能下降尤其明显。
OP已经一年多了,仍然没有找到答案。如果有人找到解决方案,请发布。
可能是权限错误。 您是否在清单中添加了正确的权限?
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
当我尝试将相机捕获的图像直接保存到:
/data/data/com.xxx.testlib/images/b22a1a294fd6e5ad3ea3d25b63c4c735.jpg
时,我也遇到了同样的异常。
然后我首先将图像保存到相机使用的默认位置并将其复制到:
/data/data/com.xxx.testlib/images/b22a1a294fd6e5ad3ea3d25b63c4c735.jpg
。
现在“不是 DRM 文件,无法打开”已从日志中删除并成功保存图像。
结论:文件夹:-
/data/data/com.xxx.testlib/
是私有的,只能从应用程序内部访问。