[Android] NuPlayer回调通知直至App

复制代码
@startuml

package App{
    class CallBacks{
        <font color="#999933" size=20> notify </font>mOnPreparedListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnCompletionListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnBufferingUpdateListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnSeekCompleteListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnVideoSizeChangedListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnTimedTextListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mExtSubtitleDataListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnMediaTimeDiscontinuityListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnTimedMetaDataAvailableListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnErrorListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnInfoListener<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnDrmConfigHelper<font color="#999933" size=20> notify-END </font>
        <font color="#999933" size=20> notify </font>mOnDrmInfoHandlerDelegate<font color="#999933" size=20> notify-END </font>
    }
}

package libmedia{
    class JAVA{
        <font color="pink" size=20> notify </font>private static void postEventFromNative(Object mediaplayer_ref,int what, int arg1, int arg2, Object obj)  <font color="brown" size=20> notify </font>
        <font color="brown" size=20> notify </font>public void EventHandler::handleMessage(Message msg)  <font color="#999933" size=20> notify </font>
    }
    class JNI{
        JNIMediaPlayerListener
        <font color="green" size=20> notify </font>void JNIMediaPlayerListener::notify(int msg, int ext1, int ext2, const Parcel *obj) <font color="pink" size=20> notify </font>
    }
    class MediaPlayer{
        <font color="blue" size=20> notify </font> void MediaPlayer::notify(int msg, int ext1, int ext2, const Parcel *obj) <font color="green" size=20> notify </font>
    }
}

package Interface{
    abstract class IMediaPlayerClient{
        <font color="cyan">IMediaPlayerClient.h
        <font color="green">处理来自Client的回调
        <font color="red" size=20> notify </font> {abstract}  void notify(int msg, int ext1, int ext2, const Parcel *obj) = 0;  <font color="blue" size=20> notify </font>
    }
}

package libmediaplayerservice{
    class NuPlayerDriver{
        <font color="#4f6459" size=20> notify </font> void NuPlayerDriver::notifyListener_l(int msg, int ext1, int ext2, const Parcel *in) <font color="orange" size=20> notify </font>
    }
    class NuPlayer{
        <font color="#4f6459" size=20> notify-START </font> xxx() <font color="#4f6459" size=20> notify </font>
    }
    class Client{
        <font color="orange" size=20> notify </font> void MediaPlayerService::Client::notify(int msg, int ext1, int ext2, const Parcel *obj) <font color="red" size=20> notify </font>
    }
}

NuPlayer --> NuPlayerDriver
NuPlayerDriver --> Client
IMediaPlayerClient --> MediaPlayer
Client --> IMediaPlayerClient
MediaPlayer --> JNI
JNI --> JAVA
JAVA --> CallBacks

@enduml
相关推荐
笑一下蒜了.31 分钟前
Linux 存储多路径访问手册|multipath.conf 各配置段详解
android·linux·运维
凡泰AI34 分钟前
如何通过小程序多端框架,让一个小程序同时运行在iOS、安卓、鸿蒙以及PC客户端,实现一次开发多端运行的效果
android·ios·小程序
一笑的小酒馆1 小时前
Androidiot扫地机器人设备详情页地图加载慢卡顿优化方案
android
xixiaoyunya2 小时前
安卓远程管理电脑/NAS文件:从传统SMB方案到Web化私有云的选型与落地实践
android·电脑
Zhu7587 小时前
在k8s集群部署MySQL单实例,支持多个主流发行版
android·mysql·kubernetes
AFinalStone10 小时前
Android 7系统异常问题排查(四)Framework层(上)—System Server Watchdog
android·系统异常
宝杰X712 小时前
Android Room3 多平台数据库
android·数据库
huibin14785236915 小时前
热缓解学习记录
android·学习
小田的博客17 小时前
SAP MM 供应商银行主数据更新报错!message R1228!
android·java·服务器
一笑的小酒馆19 小时前
Android智能猫砂盆视频加载慢卡顿问题分析
android