From 7656bb784267bcdaa1e441fbc122909a12cf3ba8 Mon Sep 17 00:00:00 2001 From: Peter Abbondanzo Date: Tue, 16 Dec 2025 16:58:41 -0800 Subject: [PATCH] Fix large image crash Summary: Older devices don't gracefully handle large bitmaps, let's just disable them for now ``` java.lang.OutOfMemoryError: Failed to allocate a 128160012 byte allocation with 3918448 free bytes and 3MB until OOM ``` Changelog: [Internal] Differential Revision: D89334975 --- .../js/examples/Image/ImageExample.js | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/packages/rn-tester/js/examples/Image/ImageExample.js b/packages/rn-tester/js/examples/Image/ImageExample.js index 357e714ef8b..4f8d7994906 100644 --- a/packages/rn-tester/js/examples/Image/ImageExample.js +++ b/packages/rn-tester/js/examples/Image/ImageExample.js @@ -18,7 +18,14 @@ import RNTesterText from '../../components/RNTesterText'; import ImageCapInsetsExample from './ImageCapInsetsExample'; import React from 'react'; import {useEffect, useState} from 'react'; -import {Image, ImageBackground, StyleSheet, Text, View} from 'react-native'; +import { + Image, + ImageBackground, + Platform, + StyleSheet, + Text, + View, +} from 'react-native'; const IMAGE1 = 'https://www.facebook.com/assets/fb_lite_messaging/E2EE-settings@3x.png'; @@ -1013,6 +1020,16 @@ exports.examples = [ { title: 'Error Handler for Large Images', render: function (): React.Node { + if (Platform.OS === 'android' && parseInt(Platform.Version, 10) < 27) { + return ( + + + Large images are only supported on Android API 27+ + + + ); + } + return ( + + Large images are only supported on Android API 27+ + + + ); + } + const methods: Array = [ 'auto', 'resize',