API Reference
เมื่อสร้าง ByteArkPlayerFragment แล้ว สามารถเรียกใช้งาน API ของ Player ผ่าน interface ByteArkPlayerFragmentController ได้โดยตรง
Setup methods
| Method | Description |
startService() | เริ่มต้น Player Service |
releaseService() | ปลดปล่อย Player Service และทรัพยากรที่ใช้ |
addFragmentEventListener(listener: PlayerFragmentListener) | เพิ่ม Listener สำหรับรับ Event จาก Player |
removeFragmentEventListener(listener: PlayerFragmentListener) | ลบ Listener ที่เพิ่มไว้ |
addCompanionAdSlot(slot: ByteArkCompanionAdSlot) | เพิ่ม Companion Ad slot |
| Method | Description |
openMedia(item: ByteArkPlayerItem) | เปิดวิดีโอเพื่อเริ่มเล่น |
openPlaylist(playlist: ByteArkPlayerPlaylist) | เปิด Playlist สำหรับเล่นต่อเนื่อง |
getPlayerItem(): ByteArkPlayerItem? | คืนค่า ByteArkPlayerItem ของวิดีโอที่กำลังเล่นอยู่ |
getPlaylist(): ByteArkPlayerPlaylist? | คืนค่า Playlist ปัจจุบัน |
getCurrentQueue(): List<ByteArkPlayerItem> | คืนค่ารายการ Queue ปัจจุบัน |
selectQueueItem(item: ByteArkPlayerItem) | เลือกวิดีโอใน Queue เพื่อเริ่มเล่น |
addItemToQueue(item: ByteArkPlayerItem) | เพิ่มวิดีโอเข้าใน Queue |
removeQueueItem(item: ByteArkPlayerItem) | ลบวิดีโอออกจาก Queue |
Playback controller
| Method | Description |
play() | เริ่มเล่นวิดีโอ |
pause() | หยุดเล่นชั่วคราว |
seekTo(position: Long) | กระโดดไปที่ตำแหน่งเวลาที่ระบุ (มิลลิวินาที) |
seekForward() | กระโดดไปข้างหน้าตาม withSeekTime |
seekBackward() | กระโดดถอยหลังตาม withSeekTime |
next() | เล่นวิดีโอถัดไปใน Playlist/Queue |
previous() | เล่นวิดีโอก่อนหน้าใน Playlist/Queue |
Tracks & quality
| Method | Description |
getCurrentAudio(): ByteArkAudio? | คืนค่า Audio track ปัจจุบัน |
getAudios(): List<ByteArkAudio> | คืนค่ารายการ Audio track ทั้งหมด |
setAudio(audio: ByteArkAudio) | เลือก Audio track |
getCurrentSubtitle(): ByteArkSubtitle? | คืนค่าซับไตเติ้ลปัจจุบัน |
getSubtitles(): List<ByteArkSubtitle> | คืนค่ารายการซับไตเติ้ลทั้งหมด |
setSubtitle(subtitle: ByteArkSubtitle) | เลือกซับไตเติ้ล |
getCurrentResolution(): ByteArkResolution? | คืนค่าความละเอียดปัจจุบัน |
getResolutions(): List<ByteArkResolution> | คืนค่ารายการความละเอียดที่เลือกได้ |
setResolution(resolution: ByteArkResolution) | เลือกความละเอียด |
Playback speed
| Method | Description |
getAvailablePlaybackSpeeds(): List<Float> | คืนค่ารายการความเร็วที่ผู้ชมเลือกได้ |
getCurrentPlaybackSpeed(): Float | คืนค่าความเร็วปัจจุบัน |
setPlaybackSpeed(speed: Float) | กำหนดความเร็วในการเล่น |
Time & status
| Method | Description |
getCurrentTime(): Long | เวลาปัจจุบันของวิดีโอ (มิลลิวินาที) |
getDuration(): Long | ความยาวทั้งหมดของวิดีโอ (มิลลิวินาที) |
isReady(): Boolean | Player พร้อมเล่นหรือไม่ |
isPlaying(): Boolean | กำลังเล่นอยู่หรือไม่ |
isBuffering(): Boolean | กำลัง Buffer อยู่หรือไม่ |
isSeeking(): Boolean | กำลัง Seek อยู่หรือไม่ |
isEnded(): Boolean | วิดีโอเล่นจบหรือยัง |
isMuted(): Boolean | ปิดเสียงอยู่หรือไม่ |
isFullScreen(): Boolean | อยู่ในโหมด Full Screen หรือไม่ |
isInPictureInPicture(): Boolean | อยู่ในโหมด PiP หรือไม่ |
UI controller
| Method | Description |
toggleFullScreen() | สลับโหมด Full Screen |
togglePictureInPicture() | สลับโหมด Picture-in-Picture |
showControls() | แสดงแถบควบคุม |
hideControls() | ซ่อนแถบควบคุม |