---
title: "addTarget(_:action:)"
framework: mediaplayer
role: symbol
role_heading: Instance Method
path: "mediaplayer/mpremotecommand/addtarget(_:action:)"
---

# addTarget(_:action:)

Adds a target object to be called when an event is received.

## Declaration

```swift
func addTarget(_ target: Any, action: Selector)
```

## Parameters

- `target`: The object to receive action messages sent by the receiver when the represented remote command is triggered. The value must not be nil.
- `action`: A selector identifying the method on the target to be called. The value must not be NULL. The method to be called must have the following signature: - (MPRemoteCommandHandlerStatus) handleCommand: (MPRemoteCommandEvent*) event;

## Discussion

Discussion Call the addTarget(_:action:) method multiple times to specify multiple target-action pairs. If a specific target-action pair has already been added, the request is ignored. You can add multiple actions for a single target by calling this method multiple times using the same target, but different actions. The command object does not keep a strong reference to the target; you should remove the target before the target is deallocated.

## See Also

### Handling events

- [addTarget(handler:)](mediaplayer/mpremotecommand/addtarget(handler:).md)
- [removeTarget(_:)](mediaplayer/mpremotecommand/removetarget(_:).md)
- [removeTarget(_:action:)](mediaplayer/mpremotecommand/removetarget(_:action:).md)
- [MPRemoteCommandHandlerStatus](mediaplayer/mpremotecommandhandlerstatus.md)
