"Linking" these plugins is black box magic, if anything the fails I have absolutely no clue what is going on.
I have a feeling that some of the hairy errors I've been getting have something to do with the plugins not being up to date with the other libraries.
But like I said, I just have no idea what's going on.
If I'm going to learn how Android and iOS code needs to be structured then I prefer to just write native code. At least I will have more control.
Expo has audio (https://docs.expo.io/versions/latest/sdk/audio.html), file system (https://docs.expo.io/versions/latest/sdk/asset.html), and other APIs built in (https://docs.expo.io/versions/latest/sdk/index.html). We don't have sqlite right now but are actively working on it!
The idea is that we provide a lot of nice things out of the box and then if you still need to write native code you can detach (https://docs.expo.io/versions/latest/guides/exponentkit.html) and only write the native code you need while keeping all our other APIs. You can still use `react-native link` after detaching if you want.