I'd like to remove textures from memory, and fall back on different shaders if I receive the onDidReceiveMemoryWarning from the iOS, but right now I do not see any documentation on how to get that message? I was wondering if anyone has done this or if there is a tool//plugin that could assist with this if Unity does not have native support for this?
There are vague mentions on the forums to check UnitySendMessage in the AppController, but I have no real idea on how to do this.
I found the answer for anyone interested.
In the AppController.mm
Look for the function:
This is the function that is called when your app receives a low memory warning.
Next you must add a UnitySendMessage to your Unity code, so that you can receive the low memory warning message in your Unity code.
So, you must modify the applicationDidReceiveMemoryWarning function by writing this code:
After you add this message call to the AppController.mm file, in your Unity code, add a new file for the class that will be receiving the message. Mine happens to be in C#, but it can be any file type. Mine is MemoyManager.cs.
Then add the code:
This class now receives the message sent from the AppController.mm, and within your own function, mine is ReceivedMemoryWarning, handle how you deal with, free up memory within your game/project.
Also, it's worth mentioning if you want to modify the AppController.mm and have it update automatically in xCode every time, first create a folder in your Assets folder within the Project hierarchy window named "iOS". Then drag the AppController.mm file into that folder with your modified code, and Unity will automatically update your changes when it builds to xCode.
I hope that helps for everyone who is looking to do this, whether you're a programmer or not.