OnMouseDown is checked when build for Android

I have an question.

For example I have two function, One that is getting the OnMouseDown event when Im in the editor and other one when Im getting touch inputs when Im getting the app to android.

#if UNITY_EDITOR
	void OnMouseDown()
	{
		//if the state is in Motion then we can't click on other matches 
		if (GameObject.Find ("Board").GetComponent<Board> ().DetermineBoardState())
						return ;

		//This will ensure us that if the objects are swapping than we can't swap other objects.
		if(!GameObject.Find ("Board").GetComponent<Board>().isSwapping)
		{
			GameObject.Find ("Board").GetComponent<Board> ().SwapGems (this);

			//This will not allow us to click on any other objects while is swapping
			ToggleSelector ();
	    }

	}
#endif

#if UNITY_ANDROID
	void Upate()
	{
		 TouchDown();
	}

	//  OnTouchDown.cs
	//  Allows "OnMouseDown()" events to work on the iPhone.
	//  Attach to the main camera.
	void TouchDown()
	{
		RaycastHit hit = new RaycastHit ();
		for(int i = 0; i < Input.touchCount; ++i)
		{
			if(Input.GetTouch(i).phase.Equals(TouchPhase.Began))
			{

				//Construct a ray from the current touch coordinates
				Ray ray = Camera.main.ScreenPointToRay(Input.GetTouch(i).position);
				if(Physics.Raycast(ray,out hit))
				{
					//if the state is in Motion then we can't click on other matches 
					if (GameObject.Find ("Board").GetComponent<Board> ().DetermineBoardState())
						return ;
					
					//This will ensure us that if the objects are swapping than we can't swap other objects.
					if(!GameObject.Find ("Board").GetComponent<Board>().isSwapping)
					{
						GameObject.Find ("Board").GetComponent<Board> ().SwapGems (this);
						
						//This will not allow us to click on any other objects while is swapping
						ToggleSelector ();
					}
				}
			}
		}	
	}

#endif

As you can see I placed the macros that I want my function to be called for.

So, as I understood, When I will be in the Editor, my script will work with OnMouseDown.

But when I will be on Android, I will work with Update and TouchDown. Right ?

Reference from this link http://docs.unity3d.com/Manual/PlatformDependentCompilation.html

Than if that is true, why when Im building the Level for Android I’m getting this warning.?

Game scripts or other custom code contains OnMouse_ event handlers. Presence of such handlers might impact performance on handheld devices.
UnityEditor.HostView:OnGUI()

Do you have an OnMouseDown function anywhere else in a script in your assets folder? do a search using Mono or something, with ctrl+shift+f. Regardless, I’ve always found that warning message could be safely ignored anyway. Also of note, I’ve been perfectly fine using OnMouseDown handlers for iOS without any noticeable drop in performance. I get the same warning on my builds.

[Closed].

It was a bug of mine.
Actually the OnMouseDown is working with phones. Only that you cannot take more than one touch at the same time.