OnPointerDown and UI Buttons

The code below does not work. It does not throw a debug message and it does not change the application level. Why? (It is a component of a new UI Button (4.6) that IS interactable)

using UnityEngine;
using System.Collections;
using UnityEngine.EventSystems;

public class LoadAppButton : MonoBehaviour, IPointerDownHandler {

	// Use this for initialization
	void Start () {
	// Update is called once per frame
	void Update () {

	public void OnPointerDown(PointerEventData data){
		Debug.Log ("Button was clicked");
		Application.LoadLevel ("mapscene");

Does your button have any reaction at all? Most likely not. That would mean that you forgot to add EventSystem to your Hierarchy. But if you have it then provide a screenshots of your Button, UI Canvas and EventSystem settings - as something is incorrect there not with your code.

put your script in actual Button UI object