Legacy Documentation: Version 4.6(go to latest)
Language: English
  • C#
  • JS
  • Boo

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Application.ExternalCall

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Sumbission failed

For some reason your suggested change could not be submitted. Please try again in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

public static function ExternalCall(functionName: string, params args: object[]): void;
public static void ExternalCall(string functionName, params object[] args);
public static def ExternalCall(functionName as string, *args as object[]) as void

Description

Calls a function in the containing web page (Web Player only).

This will call JavaScript function functionName in the web page that contains the web player, passing given arguments to it. Supported argument types are the primitive types (string, int, float, char) and arrays of them. Any other objects are converted to string (using ToString method) and passed as strings.

The function is called non-blocking, i.e. ExternalCall immediately returns without waiting for the function that was called to complete.

The number of passed arguments can be varying:

	// Calls MyFunction1 in web page with no arguments
	Application.ExternalCall ("MyFunction1");

// Calls MyFunction2 in web page with a string Application.ExternalCall ("MyFunction2", "Hello from Unity!");

// Calls MyFunction3 in web page with several arguments of different types Application.ExternalCall ("MyFunction3", "one", 2, 3.0);
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    void Example() {
        Application.ExternalCall("MyFunction1");
        Application.ExternalCall("MyFunction2", "Hello from Unity!");
        Application.ExternalCall("MyFunction3", "one", 2, 3.0F);
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	def Example() as void:
		Application.ExternalCall('MyFunction1')
		Application.ExternalCall('MyFunction2', 'Hello from Unity!')
		Application.ExternalCall('MyFunction3', 'one', 2, 3.0F)

The functions to be called are just declared in the HTML page using standard syntax, for example:

	// This should be contained in the host page in the appropriate <script> element.
	// Using the above call from Unity, this will receive
	// "Hello from Unity!" as the argument.
	function MyFunction2( arg )
	{
		alert( arg );
	}