Is there any other way to call into Unity from Objective-C other than UnitySendMessage?

Is there any other way to call into Unity from Objective-C other than by using UnitySendMessage? UnitySendMessage appears to be limited to sending strings from native obj-c code into Unity, which is not a huge problem I suppose, but it'd be nice to be able to send more than just strings.

Another way I thought of was to use UnitySendMessage to call a "refresh" call in Unity, which could then callback into Obj-C to retrieve whatever data it needs.

Perhaps there is a more elegant solution?

I've never used UnitySendMessage before and don't really know what it does, but I believe you could simply send strings containing numbers, and then convert your strings into integers once bringing them into Unity. That might provide more flexibility.

This article on the Microsoft Developer Network goes into more depth about this.

http://msdn.microsoft.com/en-us/library/bb397679.aspx

yes you can.

Here is an example of exactly that.

Of course the video maker did UnitySendMessage with his function callback, but you could easily make any functions you wanted with it.

there is a whole series of plugin videos for unity.