Module natif React, fichier Cocoapod introuvable

voix
0

Je construis un module pour React natif, comme une partie de cela, il y a un code natif iOS qui est enveloppé dans un cocoapod. J'ai ce beau travail, et je peux installer le cocoapod et voir les classes natives de la RN côté aucun problème. L' une des classes natives tente d'obtenir le chemin vers un fichier mp3 locale dans un sous - dossier proj/Audio/file.mp3. En utilisant le code suivant ObjC:NSString *path = [[NSBundle mainBundle] pathForResource:@file ofType:@mp3 inDirectory:@Audio];

Ceci est de retour nilet en tant que telle provoquer une erreur lors d'une tentative d'obtenir le NSURLpour le fichier. J'ai l'extension mp3 ajouté à l' podspec@ s.source_files = ios/**/*.{h,m,swift,mp3}il se déplace le fichier sur. Cependant, je suppose que je dois manquer quelque chose , car il peut finalement pas trouver le fichier.

Je suis allé dans le projet Xcode source et a ajouté le mp3fichier à la Copy filesphase des phases de construction. Je l' ai également fait en sorte que le fichier était lié à la cible. Je ne sais pas ce que je pourrais être absent à ce moment pour elle de ne pas pouvoir trouver.

Créé 03/12/2019 à 00:00
source utilisateur
Dans d'autres langues...                            


1 réponses

voix
0

Au lieu de mettre le fichier mp3 dans source_filesvotre podspec, essayez d' utiliser resource_bundles; consultez la documentation ici . Fondamentalement , il vous permet de définir des fichiers bundle de ressources qui CocoaPods crée pour vous avec les actifs que vous spécifiez, par exemple:

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

Vous pouvez charger la ressource de fichier paquet qui CocoaPods créé (créer un NSBundleobjet à partir de son URL par son nom - Audiodans l'exemple ci - dessus, et l' extension - bundle), puis obtenir un chemin de ressources à l' intérieur ce faisceau (la même méthode que vous avez utilisé le mainBundle) .

Créé 04/12/2019 à 11:26
source utilisateur

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