类: MediaPlayer
类: MediaPlayer
media.MediaPlayer
多媒体播放器。提供更丰富的音乐播放管理功能。比如播放、暂停、进度监听等。
示例
"nodejs";
const { MediaPlayer } = require("media");
const player = new MediaPlayer();
player.play("/sdcard/Music/test.mp3");
setInterval(() => {
console.log(player.currentPosition);
}, 1000);
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer
目录
Constructors
Accessors
方法
- awaitForCompletion
- pause
- play
- prepare
- prepareSync
- release
- reset
- seekTo
- setDataSource
- setLooping
- setScreenOnWhilePlaying
- setVolume
- start
- stop
Constructors
constructor
• new MediaPlayer()
Accessors
androidMediaPlayer
• get
androidMediaPlayer(): MediaPlayer
安卓原生播放器的对象。
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer
返回值
MediaPlayer
currentPosition
• get
currentPosition(): number
当前播放位置。单位毫秒。
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#getCurrentPosition()
返回值
number
duration
• get
duration(): number
音乐时长。单位毫秒。
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#getDuration()
返回值
number
isPlaying
• get
isPlaying(): boolean
是否正在播放
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#isPlaying()
返回值
boolean
方法
awaitForCompletion
▸ awaitForCompletion(): Promise
<void
>
等待播放完成
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#setOnCompletionListener(android.media.MediaPlayer.OnCompletionListener)
返回值
Promise
<void
>
pause
▸ pause(): void
暂停播放
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#pause()
返回值
void
play
▸ play(uri
, volume?
, looping?
): Promise
<void
>
播放音乐。在async函数中可使用await关键字等待播放完成。
参数
名称 | 类型 | 描述 |
---|---|---|
uri |
string |
音乐文件路径,或网址。 |
volume? |
number |
播放音量,为0~1的浮点数,默认为1。 |
looping? |
boolean |
是否循环播放,如果looping为true则循环播放,默认为false。 |
返回值
Promise
<void
>
prepare
▸ prepare(): Promise
<void
>
准备播放器进行播放。手动设置数据源后,需要调用prepare()或prepareSync()后才能开始播放,用于加载或下载音乐文件。
如果直接使用paly()函数播放,则无需调用本函数,因为play()函数会自动调用prepare()。
示例
"nodejs";
const { MediaPlayer } = require("media");
async function main() {
const player = new MediaPlayer();
player.setDataSource("https://www.example.com/test.mp3");
await player.prepare();
player.start();
await player.awaitForCompletion();
}
main();
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#prepareAsync()
返回值
Promise
<void
>
prepareSync
▸ prepareSync(): void
同步准备播放器进行播放。手动设置数据源后,需要调用prepare()或prepareSync()后才能开始播放,用于加载或下载音乐文件。
如果直接使用paly()函数播放,则无需调用本函数,因为play()函数会自动调用prepare()。
示例
"nodejs";
const { MediaPlayer } = require("media");
const player = new MediaPlayer();
player.setDataSource("/sdcard/Music/test.mp3");
player.prepareSync();
player.start();
$autojs.keepRunning();
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#prepare()
返回值
void
release
▸ release(): void
释放与此 MediaPlayer 对象关联的资源。推荐在使用完 MediaPlayer后立即调用此方法。尤其是在应用的UI进入后台时,应调用此方法以释放 MediaPlayer 对象,除非应用程序有特殊的需求保持对象存活。
若未能立即调用该方法释放资源,除了占用不必要的资源(例如内存和编解码器的实例)外,还可能导致移动设备持续消耗电池。
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#release()
返回值
void
reset
▸ reset(): void
重置播放器
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#reset()
返回值
void
seekTo
▸ seekTo(msec
): Promise
<void
>
跳转到指定的时间播放。
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#seekTo(int)
参数
名称 | 类型 | 描述 |
---|---|---|
msec |
number |
指定的时间,单位为毫秒。 |
返回值
Promise
<void
>
setDataSource
▸ setDataSource(path
): void
设置音乐播放的数据源,支持本地文件路径、网络音乐地址。
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#setDataSource(java.lang.String)
参数
名称 | 类型 | 描述 |
---|---|---|
path |
string |
数据源路径,比如/sdcards/test.mp3, http://www.example.com/test.mp3 |
返回值
void
setLooping
▸ setLooping(looping
): void
设置循环播放
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#setLooping(boolean)
参数
名称 | 类型 | 描述 |
---|---|---|
looping |
boolean |
是否循环播放,如果looping为true则循环播放,默认为false。 |
返回值
void
setScreenOnWhilePlaying
▸ setScreenOnWhilePlaying(keep
): void
设置播放时是否保持屏幕常亮
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#setScreenOnWhilePlaying(boolean)
参数
名称 | 类型 | 描述 |
---|---|---|
keep |
boolean |
是否保持常亮 |
返回值
void
setVolume
▸ setVolume(leftVolume
, rightVolume?
): void
设置音量
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#setVolume(float,%20float)
参数
名称 | 类型 | 描述 |
---|---|---|
leftVolume |
number |
左声道音量,为0~1的浮点数。 |
rightVolume? |
number |
右声道音量,为0~1的浮点数,默认等同于左声道。 |
返回值
void
start
▸ start(): void
开始播放
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#start()
返回值
void
stop
▸ stop(): void
停止播放
参见
https://developer.android.google.cn/reference/android/media/MediaPlayer#stop()
返回值
void