Freigeben über


MediaPlayer Klasse

Definition

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

[Android.Runtime.Register("android/media/MediaPlayer", DoNotGenerateAcw=true)]
public class MediaPlayer : Java.Lang.Object, Android.Media.IAudioRouting, Android.Media.IVolumeAutomation, IDisposable, Java.Interop.IJavaPeerable
[<Android.Runtime.Register("android/media/MediaPlayer", DoNotGenerateAcw=true)>]
type MediaPlayer = class
    inherit Object
    interface IAudioRouting
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IVolumeAutomation
Vererbung
MediaPlayer
Attribute
Implementiert

Hinweise

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

MediaPlayer ist nicht threadsicher. Die Erstellung und der gesamte Zugriff auf Playerinstanzen sollten sich im selben Thread befinden. Wenn Rückrufe registriert werden, muss der Thread über einen Looper verfügen.

Hier behandelte Themen: <ol><li>State Diagram<li>Valid and Invalid States<li Permissions<li>>Register informational and error callbacks</ol>

<div class="special reference"><h3>Developer Guides</h3>

Weitere Informationen zur Verwendung von MediaPlayer finden Sie im Entwicklerhandbuch für die Medienwiedergabe .

</Div>

"StateDiagram"><h3>State Diagram</h3>

Die Wiedergabesteuerung von Audio-/Videodateien und Datenströmen wird als Zustandsautomat verwaltet. Das folgende Diagramm zeigt den Lebenszyklus und die Zustände eines MediaPlayer-Objekts, das von den unterstützten Wiedergabesteuerungsvorgängen gesteuert wird. Die Ovale stellen die Zustände dar, in dem sich ein MediaPlayer-Objekt befinden kann. Die Bögen stellen die Wiedergabesteuerungsvorgänge dar, die den Objektzustandsübergang steuern. Es gibt zwei Arten von Bögen. Die Bögen mit einem einzelnen Pfeilkopf stellen synchrone Methodenaufrufe dar, während die Mit einem Doppelpfeilkopf asynchrone Methodenaufrufe darstellen.

<img src=".. /.. /.. /images/mediaplayer_state_diagram.gif" alt="MediaPlayer State diagram" border="0" />

Aus diesem Zustandsdiagramm kann man sehen, dass ein MediaPlayer-Objekt die folgenden Zustände hat:

<ul>li Wenn ein MediaPlayer-Objekt soeben mit new oder nach #reset() dem Aufruf erstellt wird, befindet es sich im <Zustand "em>Idle</em>", und nach #release() dem Aufruf befindet es sich im <Em-End></Em-Zustand>.>< Zwischen diesen beiden Zuständen ist der Lebenszyklus des MediaPlayer-Objekts. <ul><li>Es gibt einen subtilen, aber wichtigen Unterschied zwischen einem neu konstruierten MediaPlayer-Objekt und dem MediaPlayer-Objekt nach #reset() dem Aufruf. Es handelt sich um einen Programmierfehler, um Methoden wie #getCurrentPosition(), , #getDuration(), , #getVideoHeight(), #getVideoWidth()#setAudioAttributes(AudioAttributes), #pause()#seekTo(long, int)#start()#stop()#setLooping(boolean)#setVolume(float, float)oder #prepare()#prepareAsync() im>< Em Idle</em-Zustand> für beide Fälle aufzurufen. Wenn eine dieser Methoden direkt nach dem Erstellen eines MediaPlayer-Objekts aufgerufen wird, wird die vom Benutzer angegebene Rückrufmethode OnErrorListener.onError() nicht vom internen Playermodul aufgerufen, und der Objektzustand bleibt unverändert; Wenn diese Methoden jedoch direkt danach #reset()aufgerufen werden, wird die vom Benutzer bereitgestellte Rückrufmethode OnErrorListener.onError() vom internen Playermodul aufgerufen, und das Objekt wird in den <Em>Error</em-Zustand> übertragen. </li li><>Sie müssen einen Verweis auf eine MediaPlayer-Instanz beibehalten, um zu verhindern, dass sie garbage collection wird. Wenn eine MediaPlayer-Instanz garbage collection ist, #release wird sie aufgerufen, wodurch die fortlaufende Wiedergabe beendet wird. <li>You must call #release() once you have finished using an instance to release acquired resources, such as memory and codecs. Nachdem Sie aufgerufen #releasehaben, müssen Sie nicht mehr mit der freigegebenen Instanz interagieren. <li>MediaPlayer-Objekte, die mit dieser Methode new erstellt wurden, befinden sich im <>Idle</em-Zustand>, während die mit einer der überladenen praktischen create Methoden erstellt wurden<, im Idle</em-Zustand>><>em em sind.<> Tatsächlich befinden sich die Objekte im Zustand " <em>Prepared</em> ", wenn die Erstellung mithilfe create der Methode erfolgreich ist. </li></ul></li li>><Li Im Allgemeinen kann ein Wiedergabesteuerungsvorgang aus verschiedenen Gründen fehlschlagen, z. B. nicht unterstütztes Audio-/Videoformat, schlecht interleavierte Audio/Video, Auflösung zu hoch, Streamingtimeout und das gleiche. Daher ist die Fehlerberichterstattung und -wiederherstellung unter diesen Umständen ein wichtiges Anliegen. Aufgrund von Programmierfehlern kann das Aufrufen eines Wiedergabesteuerungsvorgangs in einem ungültigen Zustand ebenfalls auftreten. Unter all diesen Fehlerbedingungen ruft das interne Playermodul einen Benutzer auf, der eine OnErrorListener.onError()-Methode angegeben hat, wenn ein OnErrorListener zuvor über #setOnErrorListener(android.media.MediaPlayer.OnErrorListener). <ul><li>Es ist wichtig zu beachten, dass das MediaPlayer-Objekt nach dem Auftreten eines Fehlers den <Em-Fehler<>-/Em-Zustand> eingibt (außer wie oben erwähnt), auch wenn ein Fehlerlistener nicht von der Anwendung registriert wurde.</li li><>Um ein MediaPlayer-Objekt wiederzuverwenden, das sich im <> Em Error</em-Zustand> befindet und aus dem Fehler wiederhergestellt wird, kann aufgerufen werden, #reset() um das Objekt in seinen <>Idle</em-Zustand> wiederherzustellen.</li li><>Es ist eine gute Programmierpraxis, dass Ihre Anwendung einen OnErrorListener registriert, um nach Fehlerbenachrichtigungen vom internen Playermodul zu suchen.</li li>><IllegalStateException wird ausgelöst, um Programmierfehler wie aufrufen#prepare(), #prepareAsync()oder eine der überladenen Methoden in einem ungültigen setDataSource Zustand zu verhindern. </li>/ul></li li><>Calling #setDataSource(FileDescriptor), oder #setDataSource(String), oder #setDataSource(Context, Uri), oder #setDataSource(FileDescriptor, long, long), oder #setDataSource(MediaDataSource) übertragen ein MediaPlayer -Objekt im <>Em Idle</em-Zustand in den <em>Initialized</em-Zustand>>.< <ul><li>An IllegalStateException wird ausgelöst, wenn setDataSource() in einem anderen Zustand aufgerufen wird.</li li><>Es ist eine gute Programmierpraxis, immer nachzuschlagen IllegalArgumentException und IOException die aus den überladenen setDataSource Methoden ausgelöst werden können.</li></ul></li>><A MediaPlayer-Objekt muss zuerst den>< Em Prepared</em-Zustand> eingeben, bevor die Wiedergabe gestartet werden kann. <ul>li Es gibt zwei Möglichkeiten (synchron vs. asynchron), dass der <Em>Prepared</em-Zustand> erreicht werden kann: entweder ein Aufruf (#prepare()synchron), der das Objekt an den Zustand "em Prepared</em" überträgt, sobald der Methodenaufruf zurückgegeben wird, oder einen Aufruf an #prepareAsync() (asynchron), der das Objekt zuerst an die <<Em-Vorbereitung<>>/Em>> überträgt.>< status after the call returns (which occurs fast right away) while the internal player engine continues working on the rest of preparation work until the preparation work completes. Wenn die Vorbereitung abgeschlossen ist oder wenn #prepare() der Aufruf zurückgegeben wird, ruft das interne Playermodul dann eine vom Benutzer bereitgestellte Rückrufmethode auf, onPrepared() der OnPreparedListener-Schnittstelle, wenn ein OnPreparedListener vorher über #setOnPreparedListener(android.media.MediaPlayer.OnPreparedListener)registriert wird.</li li><>Es ist wichtig zu beachten, dass der>< Em-Vorbereitungs<-/Em-Zustand> ein vorübergehender Zustand ist, und das Verhalten des Aufrufens von Methoden mit Nebenwirkungen, während sich ein MediaPlayer-Objekt im Zustand "><Vorbereiten</em>" befindet undefiniert ist.</li li><>An IllegalStateException wird ausgelöst, wenn #prepare() oder #prepareAsync() in einem anderen Zustand aufgerufen wird.</li li><>While in the <em>Prepared</em> state, properties such as audio/sound volume, screenOnWhilePlaying, looping can be adjust by invoking the corresponding set methods.</li></ul></li li><li>Muss aufgerufen werden, #start() um die Wiedergabe zu starten. Nachdem #start() das MediaPlayer-Objekt erfolgreich zurückgegeben wurde, befindet sich das MediaPlayer-Objekt im <Em-Start><-/Em-Zustand>. #isPlaying()kann aufgerufen werden, um zu testen, ob sich das MediaPlayer-Objekt im <Em-Start><-/Em-Zustand> befindet. <ul>li While in the <em>Started</em> state, the internal player engine calls a user supplied OnBufferingUpdateListener.onBufferingUpdate() callback method if a OnBufferingUpdateListener has been registered beforehand via #setOnBufferingUpdateListener(OnBufferingUpdateListener).>< Mit diesem Rückruf können Anwendungen den Pufferstatus beim Streamen von Audio/Video nachverfolgen.</li li><>Calling #start() hat keine Auswirkungen auf ein MediaPlayer-Objekt, das sich bereits im <Zustand "em>Started</em>" befindet.</li></ul></li li>><Wiedergabe kann angehalten und angehalten werden, und die aktuelle Wiedergabeposition kann angepasst werden. Die Wiedergabe kann über #pause()die App angehalten werden. Wenn der zurückzugebende #pause() Aufruf eintritt, wechselt das MediaPlayer-Objekt in den <>Em Paused</em-Zustand>. Beachten Sie, dass der Übergang vom <Em-Start><-/Em-Zustand zum <em>Paused</em-Zustand>> und umgekehrt asynchron im Spielermodul erfolgt. Es kann einige Zeit dauern, bis der Zustand in Aufrufen #isPlaying()aktualisiert wird, und es kann eine Anzahl von Sekunden im Fall von gestreamten Inhalten sein. <ul><li>Calling #start() to resume playback for a paused MediaPlayer object, and the resumed playback position is the same as where it was paused. Wenn der zurückzulegende #start() Aufruf zurückgegeben wird, wechselt das angehaltene MediaPlayer-Objekt zurück zum <Em-Start><-/Em-Zustand.<>/li li><>Calling #pause() hat keine Auswirkung auf ein MediaPlayer-Objekt, das sich bereits im>< Em-Zustand "Angehalten</em>" befindet.</li></ul></li Li>><Calling #stop() stoppt die Wiedergabe und bewirkt, dass ein MediaPlayer in der <em>Started</em>, <em>Paused</em>, <em>Prepared </em> oder <em>PlaybackCompleted</em zustand in den <Zustand "em>Angehalten</em>>" wechselt. <ul><li>Once in the <em>Stopped</em> state, playback cannot be started until #prepare() or #prepareAsync() are called to set the MediaPlayer object to the <em>Prepared</em> state again.</li li><>Calling #stop() hat keine Auswirkungen auf ein MediaPlayer-Objekt, das sich bereits im <Zustand em>Stopped</em> befindet.</li></ul></li li>><Die Wiedergabeposition kann mit einem Aufruf #seekTo(long, int)angepasst werden. <ul><li>Obwohl der asynchrone #seekTo(long, int) Aufruf sofort zurückgegeben wird, kann der tatsächliche Suchvorgang eine Weile dauern, insbesondere für audio/video, die gestreamt werden. Nach Abschluss des tatsächlichen Suchvorgangs ruft das interne Playermodul einen Benutzer auf, der OnSeekComplete.onSeekComplete() angegeben hat, wenn ein OnSeekCompleteListener vorher über #setOnSeekCompleteListener(OnSeekCompleteListener)registriert wurde.</li li><>Bitte beachten Sie, dass #seekTo(long, int) auch in den anderen Zuständen aufgerufen werden kann, z<. B. em>Prepared</em>, <em>Paused</em> und <em>PlaybackCompleted </em> state. Wenn #seekTo(long, int) in diesen Zuständen aufgerufen wird, wird ein Videoframe angezeigt, wenn der Datenstrom über Video verfügt und die angeforderte Position gültig ist. </li li>><Außerdem kann die aktuelle Wiedergabeposition mit einem Aufruf #getCurrentPosition()abgerufen werden, der für Anwendungen wie einen Musikplayer hilfreich ist, der den Wiedergabefortschritt nachverfolgen muss.</li></ul></li li li>><Wenn die Wiedergabe das Ende des Datenstroms erreicht, wird die Wiedergabe abgeschlossen. <ul><li>Wenn der Schleifenmodus auf <"var>true</var>" #setLooping(boolean)festgelegt wurde, verbleibt das MediaPlayer-Objekt im <Zustand "em>Started</em>".</li li><>If the looping mode was set to <var>false </var>, the player engine calls a user supplied callback method, OnCompletion.onCompletion(), if a OnCompletionListener is registered beforehand via #setOnCompletionListener(OnCompletionListener). Der Aufruf der Rückrufsignale, dass sich das Objekt jetzt im <> Zustand "PlaybackCompleted</em>" befindet.</li li>><Im <>Em PlaybackCompleted</em-Zustand> kann der Aufruf #start() die Wiedergabe ab dem Anfang der Audio-/Videoquelle neu starten.</li></ul>

"Valid_and_Invalid_States"><h3>Gültige und ungültige Zustände</h3>

<table border="0" cellspacing="0" cellpadding="0">tr td>Method Name </p></td td<>>Valid States </p></td<>td>Invalid States </p></td td>><Comments </p></td></tr><td><>attachAuxEffect </p></td td<>td>{Initialized, Vorbereitet, gestartet, angehalten, beendet, PlaybackCompleted}</p></td><td>{Idle, Error}</p/><><< td td><>This method must be called after setDataSource. Durch aufrufen wird der Objektzustand nicht geändert. </p></td></tr td<><>>getAudioSessionId </p></td td<>>any </p/td td<>{}<>/p><></td><td>Diese Methode kann in einem beliebigen Zustand aufgerufen werden und durch Aufrufen wird der Objektzustand nicht geändert. </p></td></tr td<>>><getCurrentPosition </p></td td td<>>{Idle, Initialized, Prepared, Started, Paused, Stopped, PlaybackCompleted}</p></td<>td>{Error}</p></td td td td><>Successful invoke of this method in a valid state does not change the state. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen. </p></td></tr td<>>><getDuration </p></td td td><>{Prepared, Started, Paused, Stopped, PlaybackCompleted}</p></td td>><{Idle, Initialized, Error}</p></td td><td>Successful invoke of this method in a valid state does not change the state. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen. </p></td></tr><><td>getVideoHeight </p></td td td>><{Idle, Initialized, Prepared, Started, Paused, Stopped, PlaybackCompleted}</p></td><td>{Error}</p></td td td><>Successful invoke of this method in a valid state does not change the state. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen. </p></td></tr><><td>getVideoWidth </p></td td td>><{Idle, Initialized, Prepared, Started, Paused, Stopped, PlaybackCompleted}</p></td<>td>{Error}</p></td td td td><>successful invoke of this method in a valid state does not change the state. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen. </p></td></tr td><>><isPlaying </p></td td td>><{Idle, Initialized, Prepared, Started, Paused, Stopped, PlaybackCompleted}</p></td<>td>{Error}</p></td td><td>Successful invoke of this method in a valid state does not change the state. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen. </p></td></tr td>><><pause </p></td td><td>{Started, Paused, PlaybackCompleted}</p></td td><>{Idle, Initialized, Prepared, Stopped, Error}</p></td td<>>Successful invoke of this method in a valid state transfers the object to the <em>Paused</em> state. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen.</p></td></tr td>>><<prepare </p></td<>td>{Initialized, Stopped}</p></td td td><>{Idle, Prepared, Started, Paused, PlaybackCompleted, Error}</p></td td<>td>Successful invoke of this method in a valid state transfers the object to the <em>Prepared</em> state. Wenn Sie diese Methode in einem ungültigen Zustand aufrufen, wird eine IllegalStateException ausgelöst.</p></td></tr td><>><prepareAsync </p></td><td td>{Initialized, Stopped}</p></td td<>>{Idle, Prepared, Started, Paused, PlaybackCompleted, Error}</p/td<>>< td>Successful invoke of this method in a valid state transfers the object to the <em>Prepare</em> state. Wenn Sie diese Methode in einem ungültigen Zustand aufrufen, wird eine IllegalStateException ausgelöst.</p></td></tr td><><>release </p></td td><>any </p></td td td><>{}</p></td td td<>>After #release(), you must not interact with the object. </p></td></tr td><>><reset </p></td td>><{Idle, Initialized, Prepared, Started, Paused, Stopped, PlaybackCompleted, Error}</p></td><td>{}<><>< td>After #reset(), das Objekt ist wie gerade erstellt.</p></td></tr>><<td>seekTo </p></td td<>td>{Prepared, Started, Paused, PlaybackCompleted}</p></td td<>td>{Idle, Initialized, Stopped, Error}</p></td><td>Successful invoke of this method in a valid state does not change the state. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen. </p></td></tr><><td>setAudioAttributes </p></td td td>><{Idle, Initialized, Stopped, Prepared, Started, Paused, PlaybackCompleted}</p></td><td>{Error}</p></td td td><>Successful invoke of this method does not change the state. Damit der Zielaudioattributetyp wirksam wird, muss diese Methode vor prepare() oder prepareAsync() aufgerufen werden.</p></td></tr><><td>setAudioSessionId </p></td td>><{Idle}</p></td td>><{Initialized, Prepared, Started, Paused, Stopped, PlaybackCompleted, Error}</p></td td><>This method must be called in idle state as the audio session ID must be known before calling setDataSource. Durch aufrufen wird der Objektzustand nicht geändert. </p></td></tr><td><>setAudioStreamType (veraltet)</p></td td>><{Idle, Initialized, Stopped, Prepared, Started, Paused, PlaybackCompleted}</p></td<>td>{Error}</p></td td><td td>Successful invoke of this method does not change the state. Damit der Zieldatenstromtyp wirksam wird, muss diese Methode vor prepare() oder prepareAsync() aufgerufen werden.</p></td></tr td><><>setAuxEffectSendLevel </p></td td>><any</p></td td td><>{}</p></td td td><>Calling this method does not change the object state. </p></td></tr td<><>>setDataSource </p></td<>td>{Idle}</p></td td td>><{Initialized, Prepared, Started, Paused, Stopped, PlaybackCompleted, Error}</p/td>< td<>>Successful invoke of this method in a valid state transfers the object to the <em>Initialized</em> state. Wenn Sie diese Methode in einem ungültigen Zustand aufrufen, wird eine IllegalStateException ausgelöst.</p></td></tr td><>><setDisplay </p></td td>><any </p/td td<>/p><></td td td>{}<><> This method can be called in any state and calling it does not change the object state. </p></td></tr td<><>>setSurface </p></td td<>>any </p/td td<>{}<>/p><></td td><>Diese Methode kann in keinem Zustand aufgerufen werden und durch Aufrufen des Objekts wird der Objektzustand nicht geändert. </p></td></tr><><td>setVideoScalingMode </p></td td<>>{Initialized, Prepared, Started, Paused, Stopped, PlaybackCompleted}</p></td><td>{Idle, Error}</p></td td td<>>Successful invoke of this method does not change the state.</p></td></tr><><td>setLooping </p></td td td>><{Idle, Initialized, Stopped, Prepared, Started, Paused, PlaybackCompleted}</p></td><td>{Error}</p></td td td><>Erfolgreicher Aufruf dieser Methode in einem gültigen Zustand ändert den Zustand nicht. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen.</p></td></tr td<><>>isLooping </p></td td>><any </p/td td><>{}</p><></td td td><>Diese Methode kann in keinem Zustand aufgerufen werden und durch Aufrufen wird der Objektzustand nicht geändert. </p></td></tr td><><>setOnBufferingUpdateListener </p></td td>><any </p></td td td><>{}</p></td td td><>This method can be called in any state and calling it does not change the object state. </p></td></tr><><td>setOnCompletionListener </p></td td><>any </p></td td td>{}<<>/p/td>< td><>Diese Methode kann in jedem Zustand aufgerufen werden und durch Aufrufen des Objekts wird der Objektzustand nicht geändert. </p></td></tr td><><>setOnErrorListener </p></td td>><any </p></td td td>>{}<</p></td><td>This method can be called in any state and calling it does not change the object state. </p></td></tr td><><>setOnPreparedListener </p></td td>><any </p></td td td><>{}</p></td td td><>Diese Methode kann in jedem Zustand aufgerufen und durch Aufrufen des Objekts nicht geändert werden. </p></td></tr td<><>>setOnSeekCompleteListener </p></td td>><any </p></td td td>>{}<</p></td td><>This method can be called in any state and calling it does not change the object state. </p></td></tr td><>><setPlaybackParams</p></td td td><>{Initialized, Prepared, Started, Paused, PlaybackCompleted, Error}</p></td<>td>{Idle, Stopped}</p/td>< td><>This method will change state in some cases, depending on when it's called. </p></td></tr td>><<>setScreenOnWhilePlaying</></td td>><any </p></td td td><>{}</p></td td td><>Diese Methode kann in jedem Zustand aufgerufen werden und durch Aufrufen wird der Objektzustand nicht geändert. </p></td></tr td><>><setVolume </p></td td td>><{Idle, Initialized, Stopped, Prepared, Started, Paused, PlaybackCompleted}</p></td<>td>{Error}</p></td td><td>Successful invoke of this method does not change the state. <tr><td>setWakeMode </p></td td><>any </p></td td td><>{}</p></td td<>>This method can be called in any state and calling it does not change the object state.</p></td></tr td>><><start </p></td td><td>{Prepared, Started, Paused, PlaybackCompleted}</p></td td><>{Idle, Initialized, Stopped, Error}</p></td td<>>Successful invoke of this method in a valid state transfers the object to the <em>Started</em> state. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen.</p></td></tr td>><><stop </p></td td<>td>{Prepared, Started, Stopped, Paused, PlaybackCompleted}</p></td td<>td>{Idle, Initialized, Error}</p></td td<>>Successful invoke of this method in a valid state transfers the object to the <em>Stopped</em> state. Durch Aufrufen dieser Methode in einem ungültigen Zustand wird das Objekt in den <Em>Error</em-Zustand> übertragen.</p></td></tr td><><>getTrackInfo </p></td td<>td>{Prepared, Started, Stopped, Paused, PlaybackCompleted}</p></td td><>{Idle, Initialized, Error}</p></td td<>>Successful invoke of this method does not change the state.</p></td></tr td><>><addTimedTextSource </p></td td td><>{Prepared, Started, Stopped, Paused, PlaybackCompleted}</p></td td><>{Idle, Initialized, Error}</p></td td td<>>Successful invoke of this method does not change the state.</p></td></tr td><>><selectTrack </p></td td<>td>{Prepared, Started, Stopped, Paused, PlaybackCompleted}</p></td td><td>{Idle, Initialized, Error}</p></td td<>>Successful invoke of this method does not change the state.</p></td></tr><><td>deselectTrack </p></td td><td>{Prepared, Started, Stopped, Paused, PlaybackCompleted}</p></td td<>>{Idle, Initialized, Error}</p></td<>td>Successful invoke of this method does not change the state.</p></td></tr>

</Tisch>

"Berechtigungen"><h3>Berechtigungen</h3>

Möglicherweise muss ein entsprechendes WAKE_LOCK Berechtigungselement android.R.styleable#AndroidManifestUsesPermission &lt;uses-permission&gt; deklariert werden.

Diese Klasse erfordert die android.Manifest.permission#INTERNET Berechtigung, wenn sie mit netzwerkbasierten Inhalten verwendet wird.

"Rückrufe"><h3>Rückrufe</h3>

Anwendungen möchten sich möglicherweise für Informations- und Fehlerereignisse registrieren, um über einige interne Zustandsaktualisierungen und mögliche Laufzeitfehler während der Wiedergabe oder beim Streaming informiert zu werden. Die Registrierung für diese Ereignisse erfolgt durch ordnungsgemäßes Festlegen der entsprechenden Listener (über Aufrufe von #setOnPreparedListener(OnPreparedListener) setOnPreparedListener, #setOnVideoSizeChangedListener(OnVideoSizeChangedListener) setOnVideoSizeChangedListener, , #setOnCompletionListener(OnCompletionListener) setOnCompletionListener#setOnSeekCompleteListener(OnSeekCompleteListener) setOnSeekCompleteListener, #setOnBufferingUpdateListener(OnBufferingUpdateListener) setOnBufferingUpdateListener, #setOnInfoListener(OnInfoListener) setOnInfoListener#setOnErrorListener(OnErrorListener) setOnErrorListenerusw.). Um den entsprechenden Rückruf zu empfangen, der diesen Listenern zugeordnet ist, müssen Anwendungen MediaPlayer-Objekte in einem Thread erstellen, wobei ein eigener Looper ausgeführt wird (der Haupt-UI-Thread wird standardmäßig mit einem Looper ausgeführt).

Java-Dokumentation für android.media.MediaPlayer.

Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.

Konstruktoren

MediaPlayer()

Der Standardkonstruktor.

MediaPlayer(Context)

Standardkonstruktor mit Kontext.

MediaPlayer(IntPtr, JniHandleOwnership)

Ein Konstruktor, der beim Erstellen verwalteter Darstellungen von JNI-Objekten verwendet wird; wird von der Laufzeit aufgerufen.

Felder

MediaErrorIo
Veraltet.

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

MediaErrorMalformed
Veraltet.

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

MediaErrorTimedOut
Veraltet.

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

MediaErrorUnsupported
Veraltet.

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

MediaMimetypeTextSubrip

MIME-Typ für SubRip(SRT)-Container.

VideoScalingModeScaleToFit
Veraltet.

Gibt einen Videoskalierungsmodus an.

VideoScalingModeScaleToFitWithCropping
Veraltet.

Gibt einen Videoskalierungsmodus an.

Eigenschaften

AudioSessionId

Gibt die Audiositzungs-ID zurück. - oder- Legt die Audiositzungs-ID fest.

Class

Gibt die Laufzeitklasse dieses Werts Objectzurück.

(Geerbt von Object)
CurrentPosition

Ruft die aktuelle Wiedergabeposition ab.

Duration

Ruft die Dauer der Datei ab.

Handle

Das Handle für die zugrunde liegende Android-Instanz.

(Geerbt von Object)
IsPlaying

Überprüft, ob der MediaPlayer wiedergegeben wird.

JniIdentityHashCode

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
JniPeerMembers

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

Looping

Überprüft, ob der MediaPlayer schleifen oder nicht schleifend ausgeführt wird. - oder- Legt fest, dass der Player schleifen oder nicht schleifen soll.

Metrics

Gibt Metrikdaten zum aktuellen Player zurück.

PeerReference

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
PlaybackParams

Ruft die Wiedergabeparameter ab, die die aktuelle Wiedergaberate enthalten. -oder- Legt die Wiedergaberate mithilfe von PlaybackParams.

PreferredDevice

Gibt die ausgewählte Ausgabe zurück, die durch #setPreferredDevice.

RoutedDevice

Gibt ein AudioDeviceInfo Identifizieren des aktuellen Routings dieser MediaPlayer-Notiz zurück: Die Abfrage ist nur gültig, wenn der MediaPlayer derzeit wiedergegeben wird.

SyncParams

Ruft den A/V-Synchronisierungsmodus ab. -oder- Legt den A/V-Synchronisierungsmodus fest.

ThresholdClass

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

ThresholdType

Diese API unterstützt die Mono für Android-Infrastruktur und ist nicht für die direkte Verwendung aus Ihrem Code vorgesehen.

Timestamp

Abrufen der aktuellen Wiedergabeposition als .MediaTimestamp

VideoHeight

Gibt die Höhe des Videos zurück.

VideoWidth

Gibt die Breite des Videos zurück.

Methoden

AddOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener, Handler)

Fügt einen AudioRouting.OnRoutingChangedListener Zum Empfangen von Benachrichtigungen über Routingänderungen auf diesem MediaPlayer hinzu.

AddTimedTextSource(Context, Uri, String)

Fügt eine externe zeitlich festgelegte Textquelldatei (URI) hinzu.

AddTimedTextSource(FileDescriptor, Int64, Int64, String)

Fügt eine externe zeitlich festgelegte Textdatei (FileDescriptor) hinzu.

AddTimedTextSource(FileDescriptor, String)

Fügt eine externe zeitbestimmte Textdatei (FileDescriptor) hinzu.

AddTimedTextSource(String, String)

Fügt eine externe zeitgespeicherte Textdatei hinzu.

AttachAuxEffect(Int32)

Fügt einen Hilfseffekt an den Spieler an.

ClearOnMediaTimeDiscontinuityListener()

Löscht den zuvor festgelegten Listener mit #setOnMediaTimeDiscontinuityListener(OnMediaTimeDiscontinuityListener) oder #setOnMediaTimeDiscontinuityListener(OnMediaTimeDiscontinuityListener, Handler)

ClearOnSubtitleDataListener()

Löscht den zuvor festgelegten Listener mit #setOnSubtitleDataListener(OnSubtitleDataListener) oder #setOnSubtitleDataListener(OnSubtitleDataListener, Handler).

Clone()

Erstellt und gibt eine Kopie dieses Objekts zurück.

(Geerbt von Object)
Create(Context, Int32)

Convenience-Methode zum Erstellen eines MediaPlayers für eine bestimmte Ressourcen-ID.

Create(Context, Int32, AudioAttributes, Int32)

Die gleiche Factorymethode wie #create(Context, int) dies ermöglicht ihnen jedoch die Angabe der Audioattribute und sitzungs-ID, die von der neuen MediaPlayer-Instanz verwendet werden soll.

Create(Context, Uri)

Convenience-Methode zum Erstellen eines MediaPlayers für einen bestimmten URI.

Create(Context, Uri, ISurfaceHolder)

Convenience-Methode zum Erstellen eines MediaPlayers für einen bestimmten URI.

Create(Context, Uri, ISurfaceHolder, AudioAttributes, Int32)

Die gleiche Factorymethode wie #create(Context, Uri, SurfaceHolder) dies ermöglicht ihnen jedoch die Angabe der Audioattribute und sitzungs-ID, die von der neuen MediaPlayer-Instanz verwendet werden soll.

CreateVolumeShaper(VolumeShaper+Configuration)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

DeselectTrack(Int32)

Aufheben der Auswahl eines Titels.

Dispose()

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
Dispose(Boolean)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
Equals(Object)

Gibt an, ob ein anderes Objekt "gleich" diesem Objekt ist.

(Geerbt von Object)
GetDrmInfo()

Ruft die DRM-Informationen ab, die der aktuellen Quelle zugeordnet sind.

GetDrmPropertyString(String)

Lesen Eines DRM-Modul-Plug-In-String-Eigenschaftswerts, wenn die Eigenschaftsnamezeichenfolge angegeben ist.

GetHashCode()

Gibt einen Hashcodewert für das Objekt zurück.

(Geerbt von Object)
GetKeyRequest(Byte[], Byte[], String, MediaDrmKeyType, IDictionary<String,String>)

Ein schlüsselbezogener Anforderungs-/Antwortaustausch erfolgt zwischen der App und einem Lizenzserver zum Abrufen oder Freigeben von Schlüsseln, die zum Entschlüsseln verschlüsselter Inhalte verwendet werden.

GetSelectedTrack(MediaTrackType)

Gibt den Index der derzeit für die Wiedergabe ausgewählten Audio-, Video- oder Untertiteltitel zurück, der Rückgabewert ist ein Index in dem array, von #getTrackInfo()dem zurückgegeben wird, und kann in Aufrufen #selectTrack(int) von oder #deselectTrack(int)verwendet werden.

GetTrackInfo()

Gibt ein Array von Spurinformationen zurück.

JavaFinalize()

Wird vom Garbage Collector für ein Objekt aufgerufen, wenn die Garbage Collection bestimmt, dass keine weiteren Verweise auf das Objekt vorhanden sind.

(Geerbt von Object)
Notify()

Aktiviert einen einzelnen Thread, der auf dem Monitor dieses Objekts wartet.

(Geerbt von Object)
NotifyAll()

Aktiviert alle Threads, die auf dem Monitor dieses Objekts warten.

(Geerbt von Object)
Pause()

Hält die Wiedergabe an.

Prepare()

Bereitet den Player synchron auf die Wiedergabe vor.

PrepareAsync()

Bereitet den Player asynchron auf die Wiedergabe vor.

PrepareDrm(UUID)

Bereitet das DRM für die aktuelle Quelle vor

ProvideKeyResponse(Byte[], Byte[])

Vom Lizenzserver wird eine Schlüsselantwort von der App empfangen. Anschließend wird sie mithilfe von provideKeyResponse an das DRM-Modul-Plug-In übermittelt.

Release()

Gibt Ressourcen frei, die diesem MediaPlayer-Objekt zugeordnet sind.

ReleaseDrm()

Gibt die DRM-Sitzung frei

RemoveOnRoutingChangedListener(IAudioRoutingOnRoutingChangedListener)

Entfernt ein AudioRouting.OnRoutingChangedListener Element, das zuvor hinzugefügt wurde, um Benachrichtigungen umzuleiten.

Reset()

Setzt den MediaPlayer auf den nicht initialisierten Zustand zurück.

RestoreKeys(Byte[])

Wiederherstellen beibehaltener Offlineschlüssel in einer neuen Sitzung.

SeekTo(Int32)

Sucht nach der angegebenen Zeitposition.

SeekTo(Int64, MediaPlayerSeekMode)

Verschiebt die Medien in die angegebene Zeitposition, indem der angegebene Modus berücksichtigt wird.

SelectTrack(Int32)

Wählt einen Titel aus.

SetAudioAttributes(AudioAttributes)

Legt die Audioattribute für diesen MediaPlayer fest.

SetAudioStreamType(Stream)

Legt den Audiodatenstromtyp für diesen MediaPlayer fest.

SetAuxEffectSendLevel(Single)

Legt die Sendeebene des Spielers auf den angefügten Hilfseffekt fest.

SetDataSource(AssetFileDescriptor)

Legt die zu verwendende Datenquelle (AssetFileDescriptor) fest.

SetDataSource(Context, Uri)

Legt die Datenquelle als Inhalts-URI fest.

SetDataSource(Context, Uri, IDictionary<String,String>)

Legt die Datenquelle als Inhalts-URI fest.

SetDataSource(Context, Uri, IDictionary<String,String>, IList<HttpCookie>)

Legt die Datenquelle als Inhalts-URI fest.

SetDataSource(FileDescriptor)

Legt die zu verwendende Datenquelle (FileDescriptor) fest.

SetDataSource(FileDescriptor, Int64, Int64)

Legt die zu verwendende Datenquelle (FileDescriptor) fest.

SetDataSource(MediaDataSource)

Legt die zu verwendende Datenquelle (MediaDataSource) fest.

SetDataSource(String)

Legt die zu verwendende Datenquelle (Dateipfad oder http/rtsp-URL) fest.

SetDataSourceAsync(AssetFileDescriptor)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SetDataSourceAsync(Context, Uri)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SetDataSourceAsync(Context, Uri, IDictionary<String,String>)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SetDataSourceAsync(Context, Uri, IDictionary<String,String>, IList<HttpCookie>)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SetDataSourceAsync(FileDescriptor)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SetDataSourceAsync(FileDescriptor, Int64, Int64)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SetDataSourceAsync(MediaDataSource)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SetDataSourceAsync(String)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SetDisplay(ISurfaceHolder)

Legt die SurfaceHolder Für die Anzeige des Videoteils der Medien fest.

SetDrmPropertyString(String, String)

Legen Sie den Wert der String-Eigenschaft des DRM-Moduls fest.

SetHandle(IntPtr, JniHandleOwnership)

Legt die Handle-Eigenschaft fest.

(Geerbt von Object)
SetNextMediaPlayer(MediaPlayer)

Legen Sie den MediaPlayer so fest, dass er gestartet wird, wenn die Wiedergabe dieses MediaPlayers abgeschlossen ist (i.

SetOnBufferingUpdateListener(MediaPlayer+IOnBufferingUpdateListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn sich der Status des Puffers eines Netzwerkdatenstroms geändert hat.

SetOnCompletionListener(MediaPlayer+IOnCompletionListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn das Ende einer Medienquelle während der Wiedergabe erreicht wurde.

SetOnDrmConfigHelper(MediaPlayer+IOnDrmConfigHelper)

Registrieren Sie einen Rückruf, der für die Konfiguration des DRM-Objekts aufgerufen werden soll, bevor die Sitzung erstellt wird.

SetOnDrmInfoListener(MediaPlayer+IOnDrmInfoListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn die DRM-Informationen bekannt sind.

SetOnDrmInfoListener(MediaPlayer+IOnDrmInfoListener, Handler)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn die DRM-Informationen bekannt sind.

SetOnDrmPreparedListener(MediaPlayer+IOnDrmPreparedListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn das DRM-Objekt vorbereitet wird.

SetOnDrmPreparedListener(MediaPlayer+IOnDrmPreparedListener, Handler)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn das DRM-Objekt vorbereitet wird.

SetOnErrorListener(MediaPlayer+IOnErrorListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn während eines asynchronen Vorgangs ein Fehler aufgetreten ist.

SetOnInfoListener(MediaPlayer+IOnInfoListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn eine Info/Warnung verfügbar ist.

SetOnMediaTimeDiscontinuityListener(MediaPlayer+IOnMediaTimeDiscontinuityListener)

Legt fest, dass der Listener aufgerufen wird, wenn eine Medienzeiteinstellung auftritt.

SetOnMediaTimeDiscontinuityListener(MediaPlayer+IOnMediaTimeDiscontinuityListener, Handler)

Legt fest, dass der Listener aufgerufen wird, wenn eine Medienzeiteinstellung auftritt.

SetOnPreparedListener(MediaPlayer+IOnPreparedListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn die Medienquelle für die Wiedergabe bereit ist.

SetOnSeekCompleteListener(MediaPlayer+IOnSeekCompleteListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn ein Suchvorgang abgeschlossen wurde.

SetOnSubtitleDataListener(MediaPlayer+IOnSubtitleDataListener)

Legt fest, dass der Listener aufgerufen wird, wenn eine Untertitelspur neue Daten zur Verfügung hat.

SetOnSubtitleDataListener(MediaPlayer+IOnSubtitleDataListener, Handler)

Legt fest, dass der Listener aufgerufen wird, wenn eine Untertitelspur neue Daten zur Verfügung hat.

SetOnTimedMetaDataAvailableListener(MediaPlayer+IOnTimedMetaDataAvailableListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn für einen ausgewählten Titel zeitgesteuerte Metadaten verfügbar sind.

SetOnTimedTextListener(MediaPlayer+IOnTimedTextListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn ein zeitlimitierter Text zur Anzeige verfügbar ist.

SetOnVideoSizeChangedListener(MediaPlayer+IOnVideoSizeChangedListener)

Registrieren Sie einen Rückruf, der aufgerufen werden soll, wenn die Videogröße bekannt oder aktualisiert wird.

SetPreferredDevice(AudioDeviceInfo)

Gibt ein Audiogerät (über ein AudioDeviceInfo Objekt) an, um die Ausgabe von diesem MediaPlayer weiterzuleiten.

SetScreenOnWhilePlaying(Boolean)

Steuern Sie, ob der angefügte SurfaceHolder verwendet werden soll, um den Bildschirm zu aktivieren, während die Videowiedergabe auftritt.

SetSurface(Surface)

Legt den Surface Wert fest, der als Spüle für den Videoteil der Medien verwendet werden soll.

SetVideoScalingMode(VideoScalingMode)

Legt den Videoskalierungsmodus fest.

SetVolume(Single, Single)

Legt die Lautstärke für diesen Player fest.

SetWakeMode(Context, WakeLockFlags)

Legen Sie das Verhalten der Energieverwaltung auf niedriger Ebene für diesen MediaPlayer fest.

Start()

Startet die Wiedergabe oder setzt sie fort.

Stop()

Beendet die Wiedergabe, nachdem die Wiedergabe gestartet oder angehalten wurde.

ToArray<T>()

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolgendarstellung des Objekts zurück.

(Geerbt von Object)
UnregisterFromRuntime()

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
Wait()

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch em benachrichtigt/em> oder <em>unterbrochen</em>.<><

(Geerbt von Object)
Wait(Int64)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)
Wait(Int64, Int32)

Bewirkt, dass der aktuelle Thread wartet, bis er wach ist, in der Regel durch <em>benachrichtigt</em> oder <em>unterbrochen</em> oder bis eine bestimmte Menge an Echtzeit verstrichen ist.

(Geerbt von Object)

Ereignisse

BufferingUpdate

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

Completion

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

DrmInfoEvent

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

DrmPrepared

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

Error

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

Info

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

MediaTimeDiscontinuity

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

Prepared

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

RoutingChanged

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SeekComplete

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

SubtitleData

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

TimedMetaDataAvailable

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

TimedText

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

VideoSizeChanged

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

Explizite Schnittstellenimplementierungen

IJavaPeerable.Disposed()

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
IJavaPeerable.DisposeUnlessReferenced()

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
IJavaPeerable.Finalized()

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
IJavaPeerable.JniManagedPeerState

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

(Geerbt von Object)

Erweiterungsmethoden

JavaCast<TResult>(IJavaObject)

Führt eine android-laufzeitgecheckte Typkonvertierung aus.

JavaCast<TResult>(IJavaObject)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

GetJniTypeName(IJavaPeerable)

Die MediaPlayer-Klasse kann verwendet werden, um die Wiedergabe von Audio-/Videodateien und Datenströmen zu steuern.

Gilt für: