# OnPostprocessLaunch(ILaunchReport)

> Implement this method to receive a callback after Unity attempts to launch the application.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor.Build](/engine/6000.5/script-reference/unityeditor/build.md)
* **Assembly:** UnityEditor.CoreModule

```csharp
void OnPostprocessLaunch(ILaunchReport launchReport)
```

### Parameters

**** (\[ILaunchReport]\(/engine/6000.5/script-reference/unityeditor/build/ilaunchreport)): A report containing information about the launch, such as the target platform on which the application was launched and outcome of the process. Some platforms such as Android provide additional launch information which you can obtain by performing a necessary cast.

### Remarks

Unity invokes this callback regardless of whether the application launch was successful or not.

The following platforms are not supported:

* Nintendo Switch

* PlayStation 4

* PlayStation 5

* Xbox One

* Xbox Series X|S.

Additional Resources: AsAndroidReport

### Examples

```csharp
using UnityEngine;
using UnityEditor;
using UnityEditor.Build;

namespace BuildDocExamples
{
    public class IPostprocessLaunch_OnPostprocessLaunchExample : IPostprocessLaunch
    {
    	public int callbackOrder => 0;

    	private void Log(string message)
    	{
    		Debug.LogFormat(LogType.Log, LogOption.NoStacktrace, null, message);
    	}

    	public void OnPostprocessLaunch(ILaunchReport launchReport)
    	{
    		Log($"Launch callback on {launchReport.buildTarget.TargetName.ToString()}, result: {launchReport.result}");
#if UNITY_ANDROID
    		var androidLaunchReport = UnityEditor.Android.AndroidLaunchReportExtensions.AsAndroidReport(launchReport);
    		if (androidLaunchReport != null)
    		{
    			foreach (var launch in androidLaunchReport.Launches)
    			{
    				Log($"Running '{launch.PackageName}/{launch.ActivityName}' on device '{launch.DeviceId}', Success: {launch.Success}, errors: {launch.Errors}");
    			}
    		}
#endif
    	}
    }
}
```
