黑莓应用程序在启动时非常慢,我该如何解决这个问题?

时间:2012-03-04 03:19:56

标签: blackberry startup image-resizing performance

我最近更新了我的应用程序以处理几乎所有的手机。我通过让第一个屏幕检测屏幕大小然后更改所有图像(有很多图像)来做到这一点。因此,非基本型号手机上的启动时间为15秒,看起来手机正在冻结,但它只是改变了图像。每次打开应用程序时都会这样做。我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:4)

  • 确保您在单独的线程上调整图像大小(无UI阻止操作)。
  • 如果将所有已调整大小的图像存储在持久性图像上会更好 存储,以便您不需要在a上调整两次相同的图像 听筒。


[编辑]

有关如何使用持久存储的一些链接:


用于使Bitmap对象可持久化的示例代码段:

class PersistableBitmap implements Persistable {
    int width;
    int height;
    int[] argbData;

    public PersistableBitmap(Bitmap image) {
        width = image.getWidth();
        height = image.getHeight();
        argbData = new int[width * height];
        image.getARGB(argbData, 0, width, 0, 0, width, height);
    }

    public Bitmap getBitmapImage() {
        Bitmap image = new Bitmap(width, height);
        image.setARGB(argbData, 0, width, 0, 0, width, height);
        return image;
    }
}