It’s also possible to embed Unity in an external application.
This enables Unity to be used in other platforms, and also there is messaging support through the usage of postMessage
method (https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage). In order to use it, please check it here: Messaging API.
Below, you can find a simple example of its implementation.
Implementation example
As you embed Unity inside another external application:
Code Block | ||
---|---|---|
| ||
<iframe src="https://partition.pricefx.com" id="pfx-iframe"/> |
You can start using it with the code below:
Code Block | ||
---|---|---|
| ||
const iframe = document.getElementById('pfx-iframe');
const messageHandler = (event) => console.log(event.data);
window.addEventListener(messageHandler);
iframe.contentWindow.postMessage({
"source": "pfxParentMessage",
"type": "getUserData"
}, *); |
In this case, you will attach a handler that logs the message it receives from Unity, and also will message Unity requesting the logged in user data.
On the other side, if you have an external application embedded in Unity:
Code Block | ||
---|---|---|
| ||
const messageHandler = (event) => console.log(event.data);
window.addEventListener(messageHandler);
window.parent.postMessage({
"source": "pfxParentMessage",
"type": "getUserData"
}, *); |
And you will have the same behavior as described for the first case.