2016-02-18 5 views
6

ich https://github.com/zmxv/react-native-sound zu spielen bin mit Sounds auf meinem iOS (und Android) app, und ich versuche, Sound-Dateien über das System reagieren india Asset enthalten, aber wenn ich rufe:Wie benötigen Sie eine Audiodatei in React Native?

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

ich der Fehler:

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

ich habe meine MP3-Datei in der richtigen (root) Verzeichnis meines Projekts, der exakt gleichen Dateipfad, der Fehler druckt. Ich habe versucht, es in andere Verzeichnisse auch zu setzen.

Laut this thread klingt es wie Sound-Dateien sollten in der Lage sein, mit require() auch verpackt werden?

einfach einen Test machen, arbeitet ein Bild erfordern perfekt: var image = require('./image.png');

+1

Wir können Webpack verwenden, um Vermögenswert wie MP3-Datei zu "erfordern", könnten Sie überprüfen https://github.com/mjohnston/react-native-webpack-server –

+0

@DavidGuan Danke für die Info! Aber basierend auf dieser Diskussion, sollte es nicht eingebaut werden, um Native reagieren ?: https://github.com/facebook/react-native/issues/1043#issuecomment-97249646 –

+0

Haben Sie das Beispiel für das Laden geschaut Klänge in der Bibliothek, die du benutzt hast? Es sieht nicht so aus, als hättest du den Sound korrekt importiert https://github.com/zmxv/react-native-sound#basic-usage –

Antwort

0

Das einzige, was für uns gearbeitet, um die Audio-Dateien, die wir mit der App in einem assets Verzeichnis und dann haben Xcode Kopie versenden möchten setzen diese Dateien zum Build-Zeitpunkt in das App-Bundle. An diesem Punkt können Sie den vollständigen Pfad zu der Datei berechnen, indem Sie etwas wie reactive-native-fs verwenden und das für die Reaktion von nativem Sound bereitstellen.