Instantiate prefabs on Android

I have a few simple scripts in my app and the scene is not cluttered with gameobjects; however, first time I instantiate a prefab there is a delay of a few seconds; shooting a gun (instantiates projectile prefab) and killing an enemy (also instantiate a prefab) takes a lot longer than desirable. I can't seem to get around this other than trying to load those prefabs (have them somewhere in the scene) but I am not sure if this is a safe approach. Is there maybe another way to preload objects NOT in the scene at startup?

Any ideas are very welcome, thanks!

Here’s something I did that seem to work just fine; I made a small script with prefab variables entries for each effect, model and so on I instantiate after the game is started. This increases the load time (not by very much) but it will not hick-up the game when they are loaded (before this solution) for the first time.