Tidak dapat memuat skrip dari assets index.android.bundle di windows

357

Saya mencoba menjalankan proyek React Native pertama saya untuk pertama kalinya di perangkat saya (Android 4.2.2).

Dan saya mendapatkan:

tidak dapat memuat skrip dari assets index.android.bundle

Perintah yang saya gunakan:

  1. cd (project directory)
  2. react-native start
  3. react-native run-android
Goba
sumber
6
Sebelum mencoba jawaban jerry, periksa dulu apakah Anda telah menetapkan ANDROID_HOME dalam variabel lingkungan dan dalam path-platform-tool.
Sagar Chavada
Ini bug di versi terbaru. Anda harus menggunakan versi sebelumnya dengan menggunakan ProjectName init asli reaksi --version = 0,55.4 Masalahnya harus diperbaiki.
Sulung Nugroho
kesalahan yang sama, konteks yang sama, tetapi perbaikannya mudah: tunggu server debug berubah dari Loading dependency graph...ke Loading dependency graph, donedan tekan muat ulang pada aplikasi.
Nino Filiu
Jawaban yang diterima adalah peretasan yang sangat merepotkan, yang mempersulit proses pembuatan dan basis kode. Ada jawaban yang lebih baik di sini.
Andrew Koster
Gunakan mkdir ... /assets && react-native bundle --platform..TIDAK BISA menyelesaikan masalah ini sepenuhnya, periksa ini: stackoverflow.com/a/55511803/10139109
Ian Zhong

Jawaban:

947

Saya mengalami masalah yang sama saat mengikuti tutorial React Native (berkembang di Linux dan menargetkan Android).

Masalah ini membantu saya menyelesaikan masalah dalam langkah-langkah berikut.

  1. (dalam direktori proyek) mkdir android/app/src/main/assets
  2. 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
  3. react-native run-android

Anda dapat mengotomatiskan langkah-langkah di atas dengan menempatkannya di scriptsbagian package.jsonseperti ini:

"android-linux": "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 && react-native run-android"

Kemudian Anda bisa menjalankan npm run android-linuxdari baris perintah Anda setiap saat.

Jerry
sumber
15
bagaimana jika kita ingin memodifikasi file index.android.js? setiap kali di terminal kita harus memasukkan perintahreact-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
Maulik
9
itu akan macet Loading dependency graph...setiap kali ketika saya menjalankannya kembali dari terminal dan terlalu banyak waktu. FYI Saya menggunakan ubuntu 14.04
Maulik
12
Bereaksi versi asli yang lebih baru tidak mengandung index.android.js, oleh karena itu silakan gunakan App.js dengan perintah. :) Terima kasih
Chinthaka Dinadasa
11
@ChinthakaDinadasa dalam kasus saya, ini index.jsbukanApp.js
Felix
11
Orang ini membutuhkan patung! Maksud saya itu benar-benar bekerja tidak hanya pada linux tetapi pada windows 10 juga
Reborn
126

Jika Anda menjalankan aplikasi pada perangkat fisik dan mendapatkan kesalahan ini

unable to load script from assets index.android.bundle

coba jalankan perintah:

adb reverse tcp:8081 tcp:8081

Ini bekerja untukku ...

Nidhi Shah
sumber
Ini memperbaiki masalah saya! Terima kasih!
Pablo
7
Bekerja untukku. Bagi mereka yang tidak memiliki alat platform android di jalur terminal Anda di windows, adb executable ada di `C: \ Users \ YourUser \ AppData \ Local \ Android \ sdk \ platform-tools`
Mikepote
2
Saya pikir ini harus menjadi jawaban yang benar, yang lain sepertinya seperti retas.
Cristian Gomez
2
Ini tidak berhasil untuk saya (di macOS)
szx
Ini memperbaiki masalah bagi saya (Windows, menjalankan aplikasi pada perangkat fisik). Itu salah satu perbaikan yang disarankan di kotak kesalahan merah.
Tur1ng
101

Saya menghabiskan waktu berjam-jam untuk mencari tahu masalah ini. Masalah saya bukan khusus untuk Windows tetapi khusus untuk Android.

Mengakses server pengembangan bekerja secara lokal dan di browser emulator. Satu-satunya hal yang tidak berfungsi adalah mengakses server pengembangan di aplikasi.

Dimulai dengan Android 9.0 (API level 28), dukungan cleartext dinonaktifkan secara default.

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest ...>
    <uses-permission android:name="android.permission.INTERNET" />
    <application
        ...
        android:usesCleartextTraffic="true"
        ...>
        ...
    </application>
</manifest>

Lihat untuk info lebih lanjut: https://stackoverflow.com/a/50834600/1713216

neurosnap
sumber
11
Terima kasih. Ini adalah masalah saya setelah memutakhirkan targetSdkVersionke 28.
bencergazda
Ini jawaban yang benar. Ini sebenarnya memperbaiki masalah komunikasi jaringan.
Andrew Koster
Ini adalah solusi yang digunakan dalam React Native v0.59.2 .
Tur1ng
Terima kasih telah menandai ini - sepenuhnya mencegah aplikasi RN saya memuat. Mengecewakan karena tidak ada pesan kesalahan yang lebih baik di sekitar ini: /
greg7gkb
2
Bekerja! Jika saya melihat Anda secara pribadi, saya akan memberi Anda medali (-:
Yaron Levi
61

Menggunakan npm versi 4.3.0 react-native-cli versi 2.01 react-native versi 0.49.5

Dalam direktori proyek,

  • mkdir android/app/src/main/assets
  • 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
  • react-native run-android

Nama file telah berubah dari index.android.js ke index.js

Darshan Pania
sumber
3
Agak sedih bahwa FB merilis versi baru, dan alih-alih memperbaiki bug ini - yang jelas-jelas memukul banyak orang - mereka merusak solusi yang diterima!
Tom
@IgorGanapolsky Pastikan Anda memiliki file index.bundle di folder aset Anda
Darshan Pania
@DarshanPania Apa yang dilakukan file itu?
IgorGanapolsky
3
@IgorGanapolsky File JS itu adalah titik masuk ke aplikasi Anda. Dari RN 0,49 dan seterusnya hanya ada satu file, index.jsbukan index.android.jsatauindex.ios.js
Darshan Pania
1
untuk linux:sudo 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
Taohidul Islam
42

Saya telah menghadapi masalah yang sama dengan perangkat android nyata.

Solusi: Berdasarkan jawaban ini dari Niltoid

  1. Temukan IP lokal Anda
  2. Buka aplikasi dan goyangkan perangkat Android Anda
  3. Go Dev Setting dan> Debug Server ...
  4. Rekatkan IP dan port Anda; XXXX: 8088 "(di mana X adalah IP lokal Anda)

untuk pengguna Mac: buka preferensi jaringan Anda, di sini Anda akan mendapatkan IP lokal Anda.

Milon
sumber
Bekerja untuk saya (y)
MAhipal Singh
22

Jika Anda menggunakan Windows, jalankan perintah dengan cara berikut, atau jika Anda mendapatkan kesalahan "Tidak dapat menemukan file entri index.android.js"

  1. mkdir android\app\src\main\assets
  2. 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

  3. react-native run-android

Mesin led
sumber
19

Anda dapat mengikuti instruksi yang disebutkan di halaman resmi untuk memperbaiki masalah ini. Masalah ini terjadi pada perangkat nyata karena bundel JS terletak di sistem pengembangan Anda dan aplikasi di dalam perangkat nyata Anda tidak mengetahui lokasinya.

mthakuri
sumber
Saya mendapatkan masalah ini ketika menjalankan langsung dari studio android. menggunakan react-native run-androidmemperbaikinya
yairsz
7
Tautan Anda tidak berfungsi lagi, Anda harus referensi bagian-bagian penting yang bermanfaat di masa depan untuk menjaga informasi tetap hidup setelah sumbernya mati.
Zac Grierson
Jadi bagaimana menjalankan ini di perangkat nyata ??
IgorGanapolsky
1
@IgorGanapolsky saya memiliki masalah yang sama dan memperbaikinya dengan dokumentasi resmi, Anda dapat dengan mudah memeriksa lingkungan facebook.github.io/react-native/docs/running-on-device.html Saya tidak dapat memuat porj dari android studio (dan folder android) tetapi saya bisa melakukannya dengan folder root proyek dan terminal.
Ivan Titkov
15

Punya masalah yang sama di mac, Setelah menghabiskan 2 hari saya akhirnya bisa bekerja.

Sejak Emulator cellular data was turned off, saya mendapatkan unable to load script from assets index.android.bundle make sure your bundle is running.

Pastikan Anda Emulator cellular data is turned ondengan melakukan paket server ini mampu bundel index.android.js. Semoga bermanfaat bagi seseorang yang sedang dalam tahap pengembangan.

Srinivas
sumber
Apa yang kamu maen Emulator cellular data is turned on? Dimanakah itu? Perangkat virtual? Perangkat nyata?
Hijau
Emulator berarti perangkat Virtual yang berasal dari android studio.
Srinivas
13

Saya memiliki masalah yang sama selama beberapa bulan sekarang. Saya awalnya menggunakan solusi @ Jerry, ini adalah resolusi yang salah karena tidak sepenuhnya memperbaiki masalah. Alih-alih, yang dilakukan adalah mengambil setiap build sebagai build produksi yang berarti bahwa sedikit saja perubahan yang Anda buat dalam aplikasi akan berarti membangun kembali seluruh aplikasi diperlukan.

Meskipun ini adalah solusi sementara, ini bekerja sangat buruk dalam jangka panjang karena Anda tidak lagi dapat memanfaatkan alat pengembangan React Native yang luar biasa seperti pemuatan ulang panas dll.

Solusi yang tepat ditunjukkan:

Di MainApplication.javafile Anda , ganti yang berikut ini:

@Override
public boolean getUseDeveloperSupport() {
    return BuildConfig.DEBUG;
}

dengan

@Override
public boolean getUseDeveloperSupport() {
    return true;
}

karena beberapa alasan BuildConfig.DEBUGselalu kembali palsu dan menghasilkan file bundel di direktori aset.

Dengan mengatur ini secara manual ke true, Anda memaksa aplikasi untuk menggunakan pembuat paket. Ini TIDAK akan berfungsi dalam produksi jadi pastikan untuk mengubahnya ke nilai false atau default.

Jangan lupa juga untuk lari

$ adb reverse tcp:8081 tcp:8081
Stephen Jesse
sumber
1
ini solusi nyata. Terima kasih!
keyserfaty
1
Kudus, ini solusi yang sebenarnya. Jawaban yang diterima tidak berfungsi untuk memuat ulang panas dan sama sekali bukan perbaikan yang sah untuk masalah ini.
Ganesh Datta
11

1 Buka direktori proyek Anda dan periksa apakah folder ini ada android/app/src/main/assets

  1. Jika ada maka hapus dua file yaitu index.android.bundledanindex.android.bundle.meta
  2. Jika aset folder tidak ada maka buat direktori aset di sana.

2.Dari direktori proyek root Anda lakukan

cd android && ./gradlew clean

3. Akhirnya, navigasikan kembali ke direktori root dan periksa apakah ada satu file entri yang dipanggilindex.js

  • Jika hanya ada satu file yaitu index.js kemudian jalankan perintah berikut 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

  • Jika ada dua file yaitu index.android.js dan index.ios.js kemudian jalankan ini react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

    1. Sekarang jalankan react-native run-android
mukeshmandiwal
sumber
setelah mencoba hampir semua skenario ini ... ini adalah satu-satunya solusi yang bekerja untuk saya. Terima kasih!!!!
MizAkita
Ini berhasil bagi saya setelah mengalami kesalahan ini mengikuti panduan untuk memulai pada Ubuntu 18.04. Terima kasih!
rastating
Itu bekerja untuk saya di Mac os Catalina, Terima kasih
Hitesh
9

OS: Windows

Cara lain untuk menyelesaikan masalah ini setelah mencoba dua metode di atas
(karena saya menginstal SDK tidak di DEFAULT LOCATION seperti C: \ users \ "user_name" \ appdata \ local \ sdk )

Jika Anda memperhatikan bahwa baris perintah mengumumkan: "'adb' tidak dikenali sebagai perintah internal atau eksternal ..."

Jadi begini caranya saya melupakan:
Contoh: Saya menginstal SDK di D: \ Android \ sdk
Jadi saya akan memasukkan path di System Variables 2 baris lagi:

D:\Android\sdk\tools  
D:\Android\sdk\platform-tools  

(Jika Anda tidak tahu cara mengedit path Variabel Sistem, inilah topiknya: /android/38321/what-do-i-type-in-path-variable-for-adb- server-to-start-from-cmd / 38324 )

Lalu saya jalankan cmd lagi: react-native run-android

Ini berhasil untuk saya.

Thien Nhan Nguyen
sumber
meskipun tidak benar-benar terhubung - ini adalah salah satu masalah yang sangat umum dan berfungsi seperti yang dijelaskan Thien
Pixelartist
8

Dalam kasus saya, saya telah menghapus baris di bawah ini dari MainApplication.java. (Yang sebelumnya secara keliru ditambahkan oleh saya.) : -

import com.facebook.react.BuildConfig;

Setelah itu Clean Project dan tekan perintah

reaksi-asli run-android

Poonam
sumber
Terima kasih, ini juga membantu saya.
Anil Ravsaheb Ghodake
6

Untuk IOS:

Di terminal:

cd ios

Hapus folder build dengan: rm -r build

Berlari lagi: react-native run-ios

Atau, Anda bisa membuka Finder, menavigasi ke YOUR_PROJECT / ios dan menghapus yang membangun folder .

Kemudian jalankan lagi: react-native run-ios

Untuk ANDROID:

Di terminal:

cd android/app

Hapus folder build dengan: rm -r build

Berlari lagi: react-native run-android

Atau, Anda bisa membuka Finder, menavigasi ke YOUR_PROJECT / android / aplikasi dan menghapus yang membangun folder .

Kemudian jalankan lagi: react-native run-android

Gurbela
sumber
2
Bekerja untuk Android! bersih dan mudah!
llioor
Menghapus android/app/binfolder di Windows juga berfungsi. Saya telah membangun proyeknya langsung dari Android Studio, daripada menjalankannya react-native run-android, dan sepertinya membangun sesuatu yang salah yang harus saya hapus secara manual.
Lucas Bustamante
5

Untuk masalah ini saya hanya menyelesaikannya dengan menjalankan:

react-native start

kemudian

adb reverse tcp:8081 tcp:8081

di baris perintah. Dan kemudian saya dapat menjalankan:

react-native run-android

Jadi saya tidak akan membuang waktu untuk menjalankan:

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

setiap saat.

Chheng Chansopheaktra
sumber
5

Saya juga menghadapi masalah ini karena ketika saya menjalankan proyek pada emulator berfungsi dengan baik tetapi pada perangkat nyata itu memberikan kesalahan ini. Jadi saya mengatasi masalah ini dengan solusi berikut

Langkah 1: Pertama-tama buka cmd dan buka folder Platform-tools SDK manager Anda

cd C:Development\Android\Sdk\Platform-tools

Langkah 2 : sekarang jalankan perintah ini:

adb devices

setelah perintah ini periksa perangkat Anda terdaftar di command prompt

Langkah 3 : sekarang jalankan ini

adb reverse tcp:8081 tcp:8081

Sekarang pengaturan Anda selesai

Langkah 4 : Buka direktori proyek Anda dan jalankan perintah ini

react-native run-android
Mudassir Khan
sumber
4

Ubuntu

pertama kali, saya membuat aplikasi baru dengan react-native init project-name. Saya mendapat kesalahan yang sama. jadi saya melakukan langkah-langkah berikut untuk menyelesaikan ini dalam kasus saya.

  1. Pertama jalankan sudo chown user-name-of-pc /dev/kvm dalam kasus saya.
  2. Saat debugging dari ponsel Android Anda, pilih Use USB to Transfer photos (PTP).

  3. Buat Folder assetsdengan nama-proyek / android / app / src / main

  4. pastikan index.jstersedia di root direktori proyek Anda dan kemudian jalankan perintah di bawah ini dari konsol demi cd project-namedirektori.

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

atau untuk index.android.js lalu

react-native bundle --platform android --dev false --entry-file index.android.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res

  1. jalankan perintah ./studio.shdalam android-studio/bindirektori. Ini akan membuka Android Studio.

  2. jalankan perintah react-native run-android.

masukkan deskripsi gambar di sini

Harat
sumber
4

Pastikan pembangun metro berjalan untuk menyinkronkan perangkat fisik dan server Anda

Pertama, jalankan perintah ini untuk menjalankan metro builder

mulai npm

Kemudian Anda dapat memulai build in react native

reaksi-asli run-android

Mereka seharusnya tidak ada kesalahan saat ini. Jika Anda ingin kode Anda dimuat ulang saat perubahan. Guncangkan perangkat Anda lalu ketuk Aktifkan Live Reload

dytra
sumber
3

Pastikan Anda telah menambahkan / path / ke / SDK / platform-tools ke variabel path Anda.

Saat Anda menjalankan react-native run-android, ia menjalankan adb reverse tcp: <device-port> tcp: perintah <local-port> untuk meneruskan permintaan dari perangkat Anda ke server yang berjalan secara lokal di komputer Anda. Anda akan melihat sesuatu seperti ini jika adb tidak ditemukan.

/bin/sh: 1: adb: not found
Starting the app (.../platform-tools/adb shell am start -n 
com.first_app/com.first_app.MainActivity...
Starting: Intent { cmp=com.first_app/.MainActivity }
maximus
sumber
ini harus tepat hingga jawaban yang paling banyak dipilih, seperti yang seharusnya menjadi salah satu hal pertama yang diperiksa
eis
3

Ini mungkin disebabkan oleh aset yang tidak ditautkan dalam basis kode proyek React Native Anda, seperti ketika Anda mengganti nama aplikasi / bundle id proyek Anda atau menambahkan paket eksternal tanpa menautkannya dengan benar, misalnya.

Cukup coba di direktori root proyek Anda:

react-native link

react-native run-android
Lindoélio Lázaro
sumber
2

Jika saat menjalankan react-native run-androidperintah baris kedua adalah

JS server not recognized, continuing with build...

itu berarti pemaket untuk aplikasi tidak dapat dimulai dan aplikasi akan gagal memuat tanpa beberapa langkah tambahan. Perhatikan bahwa akhir jejak masih melaporkan keberhasilan:

BUILD SUCCESSFUL

Masalahnya mungkin beberapa konflik port (dalam kasus saya itu adalah situs IIS default yang saya benar-benar lupa). Manifestasi lain dari masalah adalah kegagalan untuk membukahttp://localhost:8081/debugger-ui URL di Chrome.

Setelah konflik pelabuhan diselesaikan, jejaknya akan dilaporkan

Starting JS server...

maka jendela Node tambahan akan terbuka (node ...cli.js start ) dan aplikasi akan memuat / memuat ulang dengan sukses.

Setelah itu, Anda harus dapat membuka konsol debug di Chrome dengan http://localhost:8081/debugger-ui.

mp31415
sumber
2

Saya memiliki masalah yang sama bahkan ketika berjalan di simulator. Saya melakukan solusi cepat sehingga saya bisa memiliki alur kerja dev yang normal.

private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
  @Override
  public boolean getUseDeveloperSupport() {
    // return true here to load JS from the packager
    // BuildConfig.DEBUG for me was set to false which meant it
    // it was always trying to load the assets from assets folder.
    return true;
  }

  @Override
  protected String getJSMainModuleName() {
    return "index";
  }
};

Mungkin harus mengembalikan perubahan ketika mencoba melakukan membangun produksi.

nimgrg
sumber
2

Saya punya masalah dengan McAfee di port mac saya memblokir 8081, harus mengubahnya ke 8082.

Pertama jalankan server paket Anda:

react-native start --port 8082

Buka terminal lain, jalankan aplikasi android seperti biasa:

react-native run-android

Setelah selesai, sekarang tulis ulang port tcp yang adb tunnel:

adb reverse tcp:8081 tcp:8082

Lihat daftar terowongan adb tcp:

adb reverse --list

Anda sekarang akan melihat pesan yang mengharukan:

(reverse) tcp:8081 tcp:8082

Buka aplikasi Anda dan muat ulang, selesai!

PS: Jangan mengubah apa pun di pengaturan Dev aplikasi, jika Anda menambahkan "localhost: 8082", hapus saja, biarkan kosong.

EDIT: Untuk semua korban McAfee di luar sana, ada solusi yang lebih mudah jika Anda memiliki akses root, cukup matikan proses McAfee untuk sementara pada port 8081 dan tidak perlu perubahan port sama sekali:

sudo launchctl remove com.mcafee.agent.macmn
Indrek Ruubel
sumber
2

Saya pikir Anda tidak memiliki benang yang terpasang coba pasang dengan cokelat atau sesuatu. Ini harus diinstal sebelum membuat proyek Anda (perintah init-asli init).

Tidak perlu membuat direktori aset.

Jawab jika tidak berhasil.

Sunting: Di versi terbaru dari reaksi asli yang mereka perbaiki. Jika Anda ingin kebebasan penuh dari hanya uninstall node ini (Untuk menghapus instalasi lengkap Sepenuhnya menghapus node merujuk tautan ini) dan instal ulang node, react-native-cli kemudian buat proyek baru Anda.

Sudhanva Patil
sumber
2

jangan lupa nyalakan internet di perangkat emulator, saya menemukan kembali kesalahan ini, ia bekerja dengan sempurna: V Saya mendapatkan kesalahan ini karena saya mematikan internet untuk menguji NetInfo: D

Nguyễn Phúc
sumber
2

Ini adalah pesan kesalahan umum, yang mungkin Anda temui selama pengembangan aplikasi asli yang bereaksi. Jadi, dalam tutorial ini kita akan memberikan solusi untuk masalah ini.

Deskripsi Masalah: Tidak dapat memuat skrip dari assets index.android.bundle di windows Tidak dapat memuat skrip dari assets index.android.bundle di windows

Ikuti langkah-langkah di bawah ini untuk menyelesaikan masalah di atas:

Langkah-1: Buat folder "aset" di dalam direktori proyek Anda Sekarang buat folder aset di dalam direktori proyek yaitu "MobileApp \ android \ app \ src \ main". Anda dapat secara manual membuat folder aset:

<ATAU>

Anda dapat membuat folder dengan menggunakan perintah juga. Perintah: mkdir android / app / src / main / aset

Langkah-2: Menjalankan aplikasi React Native Anda Mari kita jalankan perintah di bawah ini untuk menjalankan aplikasi asli yang bereaksi dalam emulator atau perangkat fisik.

Beralih ke direktori proyek. cd MobileApp

Jalankan perintah di bawah ini yang membantu untuk membundel proyek aplikasi android Anda.

bundel react-native --platform android --dev false --entry-file index.js --bundle-output android / app / src / main / aset / index.android.bundle --assets-dest android / app / src / main / res

Jalankan langkah Final untuk menjalankan aplikasi asli yang bereaksi dalam emulator atau perangkat fisik. reaksi-asli run-android

<ATAU>

Anda juga dapat menggabungkan dua perintah terakhir dalam satu, Dalam hal ini Anda harus menjalankan perintah hanya sekali.

bundel react-native --platform android --dev false --entry-file index.js --bundle-output android / app / src / main / aset / index.android.bundle --assets-dest android / app / src / main / res && react-native run-android

<ATAU>

Anda dapat mengotomatiskan langkah-langkah di atas dengan menempatkannya di bagian skrip package.json seperti ini:

"android-android": "react-native bundle --platform android --dev false --entry-file index.js --bundle-output android / app / src / utama / aset / index.android.bundle --assets -dest android / app / src / main / res && reaksi-asli run-android "

Jika semuanya sudah diatur dengan benar, Anda akan segera melihat aplikasi baru Anda berjalan di emulator Android.

sumit kumar pradhan
sumber
2

Ikuti ini, Berfungsi untukku.

https://github.com/react-community/lottie-react-native/issues/269

Buka direktori proyek Anda dan periksa apakah folder ini ada android / app / src / main / assets i) Jika ada maka hapus dua file yaitu index.android.bundle dan index.android.bundle.meta ii) Jika aset folder tidak tidak ada lalu buat direktori aset di sana.

Dari direktori proyek root Anda lakukan cd android && ./gradlew clean

Akhirnya, navigasikan kembali ke direktori root dan periksa apakah ada satu file entri tunggal yang disebut index.js i) Jika hanya ada satu file yaitu index.js kemudian jalankan perintah berikut bundel reaksi bawaan --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

ii) Jika ada dua file yaitu index.android.js dan index.ios.js kemudian jalankan bundel asli-reaksi ini --platform android --dev false --entry-file index.android.js --bundle-output android /app/src/main/assets/index.android.bundle --assets-dest android / app / src / main / res

Sekarang jalankan react-native run-android

Sameer
sumber
Komentar Anda sangat membantu saya. Saya tidak yakin mengapa saya perlu menghapus dua file bundel. Tapi arahan Anda akan sempurna! Terima kasih banyak!
VK1
2

Saya baru saja menemukan masalah yang sama persis dan menyelesaikannya. Jadi harap bisa membantu.

Misalkan Anda sedang menyusun paket aplikasi rilis (.apk)

  1. Periksa apakah folder aset Anda ada ?: \ android \ app \ src \ main \ aset Jika tidak, buat satu.

  2. Setelah menjalankan "Assemble Release", periksa apakah ada sesuatu di folder itu (\ android \ app \ src \ main \ aset) Jika tidak, cari file bundle js ( index.android.bundle ), yang seharusnya berada di lebih dari satu jalur berikut:

    * a) \ android \ app \ build \ intermediates \ merged_assets \ release \ out \ index.android.bundle

    b) \ android \ app \ build \ intermediates \ merged_assets \ release \ mergeReleaseAssets \ out \ index.android.bundle

    c) \ android \ app \ build \ intermediates \ assets \ release \ index.android.bundle

    d) \ android \ app \ build \ generate \ assets \ react \ release \ index.android.bundle *

Cara yang lebih baik adalah dengan menggunakan "Semuanya" untuk mencari nama file: index.android.bundle.

  1. Kemudian salin file ini ke folder aset Anda (\ android \ app \ src \ main \ assets \ index.android.bundle)

  2. Kembali ke PowerShell atau konsol perintah, jalankan:

react-native run-android --variant = rilis

Itu harus bekerja.

Semoga berhasil!

bhw1899
sumber
Terima kasih banyak! Berjuang selama tiga hari! Btw bereaksi 0,59 asli memperbaiki masalah.
Annie
1

Gambar

Saya menghadapi masalah ini, banyak pencarian dan saya menyelesaikan masalah itu.

c:\ProjectFolder\ProjectName> 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

Kemudian Jalankan reaksi asli:

c:\ProjectFolder\ProjectName>react-native run-android

Rohit Bansal
sumber
1
Tangkapan layar sedikit tidak relevan dengan jawabannya.
Tyler
1

Untuk kalian semua yang mengembangkan dari aplikasi create-react-native-dan dikeluarkan, dan memiliki masalah developmentini, inilah yang bekerja untuk saya hanya sedikit detail dari jawaban yang diterima

(dalam direktori proyek) mkdir android / app / src / main / aset

inilah bagian yang berubah karena Anda dalam pengembangan menyingkirkan --dev: falsebagian tersebut:

bundel asli-reaksi --platform android --lokasi-file index.js --bundle-output android / app / src / main / assets / index.android.bundle --assets-dest android / app / src / main / res

setelah itu tutup semua terminal, hapus folder build dari android / app / untuk memastikan Anda mulai bersih untuk membangun aplikasi Anda, buka terminal baru, dan

(dalam direktori proyek) NPM menjalankan Android

akan meminta konsol pemaket (di terminal lain) dan berhasil membangun

RamiroIsBack
sumber