ios – How to import an asset in swift using Bundle.main.path() in a react-native native module


I’m making an alarm native module (and library) and I need to import an mp3 for the sound of the alarm notification.
I’m trying to import the mp3 using swift with the following code:
guard let filePath = Bundle.main.path(forResource: “bell”, ofType: “mp3”) else {fatalError()}

However, it’s always falling in fatalError because it can’t find the asset.
This code worked in a pure swift IOS application.
I tried seeing if the asset was in the bundle with the code:

if let files = try? FileManager.default.contentsOfDirectory(atPath: Bundle.main.bundlePath) {
            print(files)
}

But it does not appear in it:
Files in the bundle

It also does not appear in the Pods part in XCode:
Pods part in XCode

It is, however, in the folder IOS in the native module:
bell.mp3 in the folder of the native module

Any help is appreciated. Thanks.

UPDATE

I put the file in the Copy Files of the project and it worked!
However, now I have another problem. This is a native module/library that will be installed via npm, do I need to instruct every user to add the bell.mp3 to the Copy Files or is there a way to automatically configure this?

Latest articles

spot_imgspot_img

Related articles

Leave a reply

Please enter your comment!
Please enter your name here

spot_imgspot_img