Reagieren india Modul, Cocoapod Datei nicht gefunden

stimmen
0

Ich baue ein Modul für Native Reaktion, als Teil davon, gibt es einige einheimische iOS - Code, der in einem cocoapod gewickelt ist. Ich habe diese Arbeit gut, und ich kann die cocoapod und sehen die nativen Klassen von der RN Seite kein Problem installieren. Einer der nativen Klassen versucht , den Pfad zu einer lokalen MP3 - Datei in einem Unterverzeichnis zu gelangen proj/Audio/file.mp3. Unter Verwendung des folgenden ObjC Code:NSString *path = [[NSBundle mainBundle] pathForResource:@file ofType:@mp3 inDirectory:@Audio];

Das zurückkehrt nilund als solche verursacht einen Fehler , wenn sie versuchen das bekommen NSURLfür die Datei. Ich habe die mp3 - Erweiterung zu dem zusätzlichen podspec@ s.source_files = ios/**/*.{h,m,swift,mp3}so wird die Datei über bewegt. Allerdings gehe ich davon aus ich fehle etwas zu haben , da es letztlich die Datei nicht finden kann.

Ich habe in die Quelle Xcode Projekt gegangen und die hinzugefügte mp3Datei an die Copy filesPhase in Aufbauphasen. Ich habe auch dafür gesorgt , dass die Datei auf das Ziel verlinkt. Ich bin nicht sicher , was sonst könnte ich an dieser Stelle fehlt es nicht in der Lage sein , zu finden sind.

Veröffentlicht am 03/12/2019 um 00:00
quelle vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
0

Statt die MP3 - Datei in der Umsetzung source_filesIhrer podspec, versuchen Sie es mit resource_bundles; finden Sie in der Dokumentation hier . Grundsätzlich können Sie damit Ressourcenpaket - Dateien definieren , dass CocoaPods für Sie mit den Vermögenswerten erstellt , die Sie angeben, zum Beispiel:

s.resource_bundles = {
'Audio' => ['ios/**/*.mp3']
} 

Sie können die Bundle - Datei Ressource laden , dass CocoaPods erstellt (ein erstellen NSBundleObjekt aus seiner URL durch seinen Namen - Audioin dem obigen Beispiel und Erweiterung - bundle), dann einen Weg in diesem Bündel von Ressourcen bekommen (die gleiche Methode , dass Sie auf dem verwendete mainBundle) .

Beantwortet am 04/12/2019 um 11:26
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more