代码之家  ›  专栏  ›  技术社区  ›  user863873

尝试从其他应用程序获取可提取资源时内存不足

  •  0
  • user863873  · 技术社区  · 7 年前

    从我的应用程序中,我试图从其他安装的应用程序中获取特定的可绘制资源。资源始终存在。我使用:

    Resources resources = activity.getPackageManager().getResourcesForApplication(packageName);
    int previewResID = resources.getIdentifier("image", "drawable", packageName);
    Drawable myThemePreview = resources.getDrawable(previewResID);
    

    1 回复  |  直到 7 年前
        1
  •  0
  •   cwbowron    7 年前

    你可以用 BitmapFactory::decodeResource inSampleSize

    它看起来像这样:

    Resources resources = activity.getPackageManager().getResourcesForApplication(packageName);
    int previewResID = resources.getIdentifier("image", "drawable", packageName);
    BitmapFactory.Options options = new BitmapFactory.Options();
    options.inSampleSize = 4;
    Bitmap bitmap = BitmapFactory.decodeResource(resources,previewResId,options);