0

我正在编写一个需要大约 520 个小 png 的应用程序。我已将这些存储在我的资产文件夹中,并使用 getAssets() 访问它们。

但是,如果我减少文件夹中的图像数量,我的应用程序在启动时崩溃并且可以正常工作。是否可以在其他地方存储额外的图像或增加我的应用程序可以处理的图像大小?

我的 logcat 错误是“添加到 JNI 本地引用表失败(有 512 个条目)”

每个图像大约 4kb 大,总文件夹大小为 2.1 Mb

相关代码为:

        AssetManager assets = getAssets();
    fileNameList = new ArrayList<String>();
    fileNameList.clear();

    String[] paths;
    try {
        paths = assets.list("final");

        for (String path : paths)
            fileNameList.add(path.replace(".jpg", ""));

    } catch (IOException e) {
        Log.e(TAG, "Error loading image file names", e);
    } // end catch
4

1 回答 1

0

我想你的答案在这篇文章中。您不能将引用表扩展到超过 512 个项目,因此您需要删除对类和/或对象的本地引用以释放空间。

于 2013-08-01T19:28:45.723 回答