Mencoba membuat proyek reaksi asli di Android 4.4.2 Saya mendapatkan layar kesalahan ini
dan tidak dapat menemukan cara untuk menyelesaikannya. Saya mencoba me-restart packager, menghubungkan kembali perangkat, bahkan menginstal ulang reaksi asli dan memulai proyek baru. Pada 6.0.0 dan versi yang lebih baru berfungsi dengan baik.
android
react-native
Zygro
sumber
sumber
react-native run-android
? Saya mendapatkan kesalahan dalam hal ini yang aneh karena dalam mode debug seharusnya tidak perlu untuk bundel JS afaik karena seharusnya terhubung ke server paket.Jawaban:
Solusi yang mungkin untuk hal ini adalah Anda kemungkinan besar tidak mem-bundling aplikasi Anda terlebih dahulu, melakukan langkah-langkah berikut dan kemudian menggunakan app-debug.apk ke perangkat
(jika folder
assets
tidak ada, buat itu)Kemudian jalankan dari root proyek
instal apk yang dibuat untuk perangkat Anda, dari lokasi:
android/app/build/outputs/apk/app-debug.apk
beri tahu saya jika itu memperbaiki masalah Anda
EDIT :
Anda cukup memasukkannya ke package.json sebagai skrip untuk mengotomatiskannya, saya percaya ini akan diperbaiki dalam rilis asli-asli yang akan datang dan akan dieksekusi sebelum merakit APK final, maka ini tidak akan diperlukan (saya harap demikian juga)
taruh :
atau seperti yang disebutkan pada ikal ekuivalen, tetapi untuk sebagian besar kasus di atas lebih kuat
sumber
Saya menemukan masalah ini juga. Apa yang saya lakukan adalah mematikan paksa aplikasi pada perangkat saya, lalu saya membuka konsol lain dan berlari
dan kemudian saya membuka aplikasi lagi dari perangkat saya dan mulai bekerja lagi.
EDIT: Jika Anda menggunakan perangkat Android melalui USB dan mencabutnya atau komputer Anda mati, Anda mungkin harus menjalankan terlebih dahulu
sumber
react-native run-android
. Menggunakanreact-native start
tidak pernah diperlukan untuk saya ketika saya melakukannyareact-native run-ios
adb reverse tcp:8081 tcp:8081
itu sendiri sudah cukup bagi saya. Terimakasih banyak!Baru saja mendapat kesalahan ini. Inilah yang saya lakukan untuk memperbaikinya: Saya memilih
Dismiss
, Masuk ke menu Pengembang, laluDev Settings
, PilihDebug server host & port for device
, saya menambahkan alamat IP komputer saya dan port:,192.168.0.xx:8xxx
gunakan apa pun yang diberikan mesin alamat IP pengembang Anda pada jaringan wifi Anda. Port biasanya:8081
Setelah saya melakukan ini, semua berjalan dengan baik. Juga, saat Anda berada di menu dev ingat untuk memilih
Enable Live Reload
danDebug JS Remotely
, itu membuat hidup Anda jauh lebih mudah saat debugging.sumber
ifconfig
, kemudian temukan inet addr: xxx.xxx.xxx.xxx di mana xxx * adalah mesin pengembang Anda ipInilah yang bekerja untuk saya (Setelah mencoba setiap solusi lain yang saya temukan ...):
Jalankan
adb reverse tcp:8081 tcp:8081
di dalam\Android\sdk\platform-tools
sumber
react-native run-android
upaya untuk menjalankan perintah itu dan tergantung pada variabel lingkungan Windowspath
untuk memuatplatform-tools
path.Saya mendapatkan ini juga ketika saya mulai untuk pertama kalinya dengan React Native, menggunakan perangkat fisik. Jika itu masalahnya, Anda perlu melakukan beberapa hal tambahan sebelum dapat memulai. Anda harus memasukkan beberapa informasi tentang mesin pengembangan Anda di 'Pengaturan Dev' dari React Native.
Saat Anda melihat kesalahan, guncang perangkat Anda . Dialog akan muncul, opsi terakhir adalah 'Pengaturan Dev'. Pilih 'Debug server hot & port for device' dan masukkan IP lokal Anda dan port yang digunakan (biasanya 8081).
Lihat paragraf terakhir https://facebook.github.io/react-native/docs/running-on-device-android.html
sumber
Jika tidak ada solusi yang berfungsi untuk Anda coba ini:
Saya menemukan bahwa
<root>/android/app/build/intermediates/assets/debug
folder saya kosong dan dengan menjalankannyacd android && ./gradlew assembleDebug
tidak membuat file-file yang diperlukan, yang kemudian digunakan oleh thread javascript di aplikasi asli reaksi kami.Saya menjalankan secara manual perintah berikut yang seharusnya dibuat oleh perintah build debug.
Setelah menjalankan perintah ini, saya menemukan dua file bundel di direktori ini
<root>/android/app/build/intermediates/assets/debug
Dan kemudian saya berlari lagi
cd android && ./gradlew installDebug
aplikasi saya mulai bekerja lagi.Akan men-debug lebih banyak dan akan memperbarui apa yang sebenarnya gagal.
sumber
Di terminal terpisah , sambungkan perangkat Anda ke komputer dan jalankan perintah berikut:
Terminal aplikasi :
sumber
Ini sedikit terlambat tetapi ini benar-benar bekerja untuk saya.
react-native run-android
.react-native start
.Perintah pertama akan dibuat
apk
untuk android dan gunakan di perangkat Anda jika terhubung. Ketika Anda membuka Aplikasi itu akan menampilkan layar merah dengan kesalahan. Kemudian jalankan perintah kedua yang akan menjalankan pemaket dan membangun bundel aplikasi untuk Anda.sumber
Coba perintah ini di terminal dan kemudian muat ulang. Ini berhasil untuk saya
adb reverse tcp: 8081 tcp: 8081
sumber
lihat masalah :
1. mulai asli-asli
2. klik
Reload(R,R)
pada perangkat Anda.sumber
react-native run-android
sumber
restart the genymotion
? Ty vole.Saya mengalami pengecualian yang sama pada perangkat Z3 Compact D5803 - 6.0.1
Saya membuka file .buckconfig dan mengubah baris:
target = Google Inc.:Google APIs:23
untuk
target = Google Inc.:Google APIs:24
Karena saya melihat di SDK Manager bahwa Android 6.X memiliki api level 24.
sumber
Bagi saya, itu karena
adb
tidak ada dalamPATH
. Itu terletak/Users/man/Library/Android/sdk/platform-tools
untuk saya, mungkin ada di tempat lain untuk Anda, tetapi bagaimanapun, temukan dan tambahkan ke jalur Anda untuk melihat apakah itu membantu.sumber
Karena Anda menggunakan Android <5.0 Anda tidak dapat menggunakan
adb reverse
metode default , tetapi Facebook telah menambahkan dokumentasi resmi untuk terhubung ke server pengembangan melalui Wi-Fi , yang akan mendukung versi Anda. Mengutip instruksi untuk MacOS, tetapi mereka juga memilikinya untuk Linux dan Windows:sumber
Itu masalah ini "secara acak" dan kadang-kadang saya menyadari apa yang salah dalam skenario saya.
Setelah saya perbarui ke React-native-cli 2.0.1, ada output pesan ke log yang membantu saya menggali dan menemukan akar permasalahan:
Setelah meneliti beberapa tautan, saya menemukan yang ini:
Tidak dapat mengenali server JS
Karena saya di windows, saya menjalankan netstat dan menemukan bahwa VLC player saya juga berjalan di port 8081 yang menyebabkan masalah. Jadi, dalam kasus saya, jika saya memulai server vlc sebelum server yang bereaksi asli itu tidak akan berfungsi.
Pesan log yang sama ini bukan keluaran pada versi sebelumnya dari CLI-native-CLI, membuatnya gagal dalam diam.
TL, DR: periksa apakah ada yang berjalan pada port yang sama dengan manajer paket (8081 secara default)
sumber
Masalah saya adalah bahwa saya memeriksa
AndroidManifest.xml
file saya dan telah menghapus baris<uses-permission android:name="android.permission.INTERNET" />
karena aplikasi saya tidak perlu internet. Namun, aplikasi debug asli yang bereaksi memang membutuhkan akses internet (untuk mengakses paket) Whoops. :)
sumber
Coba bersihkan cache
sumber
Silakan periksa apakah Anda memiliki kesalahan berikut ketika Anda menjalankan
react-native run-android
:adb server version (XX) doesn't match this client (XX); killing...
Dalam hal ini pastikan
/usr/local/opt/android-sdk/platform-tools/adb
dan/usr/local/bin/adb
menunjuk ke hal yang samaadb
Dalam kasus saya yang satu menunjuk ke
/Users/sd/Library/Android/sdk/platform-tools/adb
(Android SDK), tetapi yang lain menunjuk ke/usr/local/Caskroom/android-platform-tools/26.0.2/platform-tools/adb
(Homebrew)Dan masalah telah diperbaiki setelah keduanya menunjuk ke
/Users/sd/Library/Android/sdk/platform-tools/adb
(Android SDK)sumber
Saya mendapat kesalahan ini juga, sangat bingung. karena semua jawaban tidak berfungsi. Hanya setelah menambahkan adb ke path.
sumber
Bagi saya, saya telah mengaktifkan sinkronisasi sisi dan aktif. Menutupnya segera membuat masalah itu hilang. Mungkin ada baiknya menutup komunikasi ini atau lainnya antara PC dan perangkat
sumber
Saya akhirnya harus membuka port yang saya gunakan (8081 secara default). Di Linux, Anda dapat melakukan hal berikut
Anda dapat menguji untuk melihat apakah Anda benar-benar perlu melakukan ini. Navigasikan saja ke server dev Anda di Chrome di perangkat Android Anda. Jika tidak merespons, maka ini yang Anda butuhkan. Jika itu merespons, maka ini tidak akan membantu Anda.
sumber
Cara saya adalah:
Setelah itu di perangkat Anda menggunakan:
Lihat di konsol reaksi-asli, itu akan mengambil data bundel.
sumber
Saya memiliki masalah yang sama. Ketika saya membuat proyek asli reaksi melalui AwesomeProject buat-reaksi-asli-aplikasi itu bekerja dengan baik di aplikasi Expo di ponsel. Setelah itu saya ingin menggunakan proyek quickstart itu untuk mengembangkan proyek saya dan mendapatkan kesalahan yang sama seperti Anda.
Setelah beberapa penelitian saya menemukan lebih baik untuk memulai proyek baru dengan AwesomeProject init-asli init (dengan semua pengaturan dalam dokumen asli bereaksi) Kemudian jalankan perintah ini:
Itu harus memperbaiki masalah dengan bundel (--dev false tidak menampilkan peringatan)
Yang perlu Anda lakukan agar aplikasi dapat berjalan di perangkat virtual / nyata Anda adalah:
Dan itu seharusnya bekerja dengan baik. Setidaknya itu berhasil untuk saya.
sumber
Bagi saya masalahnya adalah 'adb' tidak dikenali - periksa jawaban ini .
Untuk memperbaikinya, tambahkan C: \ Users \ USERNAME \ AppData \ Local \ Android \ sdk \ platform-tools ke Variabel Lingkungan
sumber
Sebagian besar dari kita menghadapi masalah ini untuk pertama kalinya, ketika kita mulai bereaksi proyek asli # 1.
Beberapa langkah sederhana memecahkan masalah saya:
Saya membuat proyek sampel menggunakan perintah:
Larutan
Cara mengatasinya adalah membantu
local-cli\runAndroid\adb.js
menemukannyaadb.exe
, dengan cara yang samalocal-cli\runAndroid\runAndroid.js
:temukan ganti pernyataan di bawah nama proyek (apa pun yang Anda berikan)
\node_modules\react-native\local-cli\runAndroid
Menggantikan:
Oleh:
setelah melakukan penggantian di atas, jalankan jalankan reaksi-asli jalankan-android di cmd Anda, itu akan bundel apk dan pada awalnya mencoba menginstal js bundle secara lokal di perangkat Anda. (Mendapat Sukses)
sumber
Saya mencoba banyak saran di atas / di bawah, tetapi pada akhirnya, masalah yang saya hadapi adalah izin dengan penjaga, yang diinstal menggunakan homebrew sebelumnya. Jika Anda melihat pesan terminal Anda saat mencoba menggunakan emulator, dan menemukan kesalahan 'Izin ditolak' berkaitan dengan penjaga bersama dengan pesan 'Tidak dapat mendapatkan BatchedBridge "ini di emulator Anda, lakukan hal berikut:
Pergi ke
/Users/<username>/Library/LaunchAgents
direktori Anda dan ubah pengaturan izin sehingga pengguna Anda dapat Baca dan Tulis. Ini terlepas dari apakah Anda benar-benar memilikicom.github.facebook.watchman.plist
file di sana atau tidak.sumber
Saya menemukan bahwa saya perlu menambahkan juga
untuk menjalankan aplikasi dengan benar.
sumber
Saya mendapat masalah yang sama tetapi itu adalah kesalahan bodoh dari diri saya sendiri ...
Dari Android studio , saya meluncurkan
installDebug/installRelease
skrip gradle dariapp
projet bukanroot
projet.sumber
Cara termudah!
Kamu baik untuk pergi!
sumber
Cukup restart sistem Anda atau bundel lengkap Anda dan masalah ini dapat diperbaiki.
sumber