Warum ist die Expo -Image auf iOS drastisch langsamer im Vergleich zu Android vorab?Android

Forum für diejenigen, die für Android programmieren
Anonymous
 Warum ist die Expo -Image auf iOS drastisch langsamer im Vergleich zu Android vorab?

Post by Anonymous »

Ich verwende das Expo -Image, um Bilder in meiner React Native App
zu unterbinden und zu präfizieren. Es funktioniert perfekt auf Android, aber es ist äußerst langsam für iOS
zum Zwecke des Debuggens Ich habe viele Protokolle hinzugefügt. Holen Sie sich die Idee. Hier ist mein Code < /p>
import { Image } from "expo-image";
import { useEffect, useState } from "react";
import { assetUrls } from "../Constants/assetConstants";
import { Platform } from "react-native";

export const usePreloadImages = () => {
const [loaded, setLoaded] = useState(false);
useEffect(() => {
let cancelled = false;
const preload = async () => {
console.log("preloading mate");
const start = Date.now();
try {
const results = await Promise.all(
assetUrls.map(async (url) => {
console.log("⏳ Prefetching:", url);
try {
await Image.prefetch(url);
console.log("✅ Prefetched:", url);
} catch (err) {
console.log("❌ Prefetch failed:", url, err);
}
})
);
const end = Date.now();
console.log("end at:", end);
console.log(`✅ Prefetch complete! Time taken: ${end - start} ms`);
console.log("Prefetch complete verifying cache");
// await debugImageCache(assetUrls);
if (!cancelled) setLoaded(true);
} catch (err) {
console.error("💥 Error in prefetch loop:", err);
if (!cancelled) setLoaded(true);
}
};
preload();
return () => {
cancelled = true;
};
}, []);
return loaded;
};
< /code>
und zum Vergleich von Zeiten habe ich dieses < /p>
Android Prefetch vollständig! Zeit benötigt: 2052 ms
< /code>
iOS Prefetch Complet! Zeitaufnahme: 31636 ms
Warum dauert der gleiche Code fast 150% mehr Zeit und was zu tun ist, um diese

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post