[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2025-07-27 (世界標準時間)。"],[],[],null,["# Media session callbacks\n\nSince a video app runs its media session and media controller in the same activity, the media session callbacks\nare different from the implementation shown for the\n[audio app](/guide/topics/media-apps/audio-app/building-an-audio-app)\nserver/client architecture. There are no service calls, and notifications are handled via the NotificationManager. The following table shows how the various features are controlled in each callback method:\n\n\u003cbr /\u003e\n\n|--------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------|------------------------------------------------|\n| | **onPlay()** | **onPause()** | **onStop()** |\n| [Audio Focus](/guide/topics/media-apps/volume-and-earphones#audio-focus) | `requestFocus()` passing in your `OnAudioFocusChangeListener`. *Always call `requestFocus()` first, proceed only if focus is granted.* | | `abandonAudioFocus()` |\n| [Media Session](/guide/topics/media-apps/working-with-a-media-session) | `setActive(true)` - Update metadata and state | - Update metadata and state | `setActive(false)` - Update metadata and state |\n| Player Implementation | Start the player | Pause the player | Stop the player |\n| [Becoming Noisy](/guide/topics/media-apps/volume-and-earphones#becoming-noisy) | Register your `BroadcastReceiver` | Unregister your `BroadcastReceiver` | |\n| Notifications | Show notification | Update notification | |\n\n\u003cbr /\u003e\n\n| **Note:** People using the Google Assistant can control your app with voice commands if you create your MediaSession with the necessary callbacks. The requirements are explained in the [Google Assistant documentation](/guide/topics/media-apps/interacting-with-assistant)."]]