Hey , yes, in principle this is possible. If your app is built on top of UE4, it will be very easy, because all the needed pieces are already there. Your app doesn’t need to use Engine - you can build a standalone Slate application that is built on top of Core, CoreUObject, Messaging, and Slate. You can look at /Engine/Programs/UnrealFrontend and /Engine/Programs/UnrealLaunchDaemon to see how we have done this in the past.
If your application is not built on top of UE4, then things get more complicated. The limiting factor right now is that we have only one actual implementation of a message transport (the UdpMessaging plug-in), and it uses a rather complicated (and currently not very efficient) protocol. You would have to reimplement this protocol in your application in order to be able to exchange messages with the GearVR app.
In the second half of this year I hope to find the time to make the UDP based transport more robust and efficient, and I also want to implement a second transport using HTTP and JSON. The latter will make it much easier to interface with non-UE4 applications. In the meantime, I recommend that you build a standalone Slate application with plug-in support. We do not currently have any tutorials that describe exactly how to do that - the initialization process in particular is somewhat cumbersome - but if you can’t figure it out based on the code that’s in UE4 then you can always post on AnswerHub and I will push you in the right direction.
When I’m done with the current Media Framework upgrades, I’m planning to write a tutorial about the design and implementation of the Messaging system in UE4, as well as standalone Slate applications.
I’m looking forward to seeing your app in action!