APK xətaları

Release-də ağ ekran

Xəta mətni

App opens to a blank white or black screen; logcat: Unable to load script. Make sure you're either running Metro or that your bundle 'index.android.bundle' is packaged correctly for release.

Səbəb

Tətbiq açılır, amma ekran boş qalır. JS bundle paketə düşməyib və ya ilk render zamanı JS xətası olub.

Addım-addım həll

  1. adb logcat ilə Unable to load script və ya JS xətasını axtar.
  2. Bundle faylının assets/index.android.bundle yolunda olduğunu yoxla.
  3. Əl ilə bundle yaradıb ./gradlew clean assembleRelease işlət.
  4. Boş ekran JS xətasındandırsa, ilk ekranı try/catch və ErrorBoundary ilə sar.
  5. Xarici API ünvanı http-dirsə, network_security_config səhifəsinə bax.

Nümunə əmrlər

adb logcat *:E | grep -i -E "react|bundle|script"
npx react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
cd android && ./gradlew clean assembleRelease

Təkrarlanmasın deyə

Hər release-dən əvvəl APK-nı debug aləti olmadan telefona qur və aç.

Müəllif və lisenziya: Nibras Code