2016-02-18 13 views
6

Sto usando https://github.com/zmxv/react-native-sound per riprodurre i suoni sul mio iOS (e Android) app, e sto cercando di includere i file audio attraverso il sistema di Reagire asset nativo, ma quando chiamo:Come si richiede() un file audio in React Native?

var sound = require('./sound.mp3');

ottengo l'errore:

Unable to resolve module ./sound.mp3 from [project]/index.ios.js: Invalid directory [project]/sound.mp3

ho il mio file MP3 nella corretta (root) directory del mio progetto, lo stesso identico percorso di file che l'errore sta stampando. Ho provato a inserirlo anche in altre directory.

Secondo this thread, sembra che i file audio possano essere impacchettati anche con require()?

Basta fare una prova, che richiede un'immagine funziona perfettamente: var image = require('./image.png');

+1

Possiamo usare il webpack per "richiedere" bene come file mp3, puoi controllare https://github.com/mjohnston/react-native-webpack-server –

+0

@DavidGuan Grazie per le informazioni! Ma in base a questa discussione, non è previsto che sia incorporato in React Native ?: https://github.com/facebook/react-native/issues/1043#issuecomment-97249646 –

+0

Hai esaminato l'esempio per il caricamento suoni nella libreria che hai detto che stai usando? Non mi sembra che tu abbia importato correttamente l'audio https://github.com/zmxv/react-native-sound#basic-usage –

risposta

0

L'unica cosa che ha funzionato per noi è quello di mettere i file audio che vogliamo spedire con l'applicazione in una directory assets e quindi avere Xcode copia quei file nel pacchetto dell'app al momento della compilazione. A quel punto, puoi calcolare il percorso completo del file usando qualcosa come react-native-fs, e fornire quello per reagire-native-sound.