Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f6b14ccf authored by Shubang Lu's avatar Shubang Lu Committed by Android (Google) Code Review
Browse files

Merge "[CASI] Implement APIs in TvAdService" into main

parents 560fa56b f18571d1
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -69,4 +69,6 @@ oneway interface ITvInputClient {
    // For ad response
    void onAdResponse(in AdResponse response, int seq);
    void onAdBufferConsumed(in AdBuffer buffer, int seq);

    void onTvInputSessionData(in String type, in Bundle data, int seq);
}
+2 −0
Original line number Diff line number Diff line
@@ -152,4 +152,6 @@ interface ITvInputManager {

    // For freezing video playback
    void setVideoFrozen(in IBinder sessionToken, boolean isFrozen, int userId);

    void notifyTvAdSessionData(in IBinder sessionToken, in String type, in Bundle data, int userId);
}
+2 −0
Original line number Diff line number Diff line
@@ -86,4 +86,6 @@ oneway interface ITvInputSession {

    // For freezing video
    void setVideoFrozen(boolean isFrozen);

    void notifyTvAdSessionData(in String type, in Bundle data);
}
+2 −0
Original line number Diff line number Diff line
@@ -68,4 +68,6 @@ oneway interface ITvInputSessionCallback {

    // For messages sent from the TV input
    void onTvMessage(int type, in Bundle data);

    void onTvInputSessionData(in String type, in Bundle data);
}
+14 −0
Original line number Diff line number Diff line
@@ -82,6 +82,7 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand
    private static final int DO_STOP_PLAYBACK = 33;
    private static final int DO_START_PLAYBACK = 34;
    private static final int DO_SET_VIDEO_FROZEN = 35;
    private static final int DO_NOTIFY_AD_SESSION_DATA = 36;

    private final boolean mIsRecordingSession;
    private final HandlerCaller mCaller;
@@ -287,6 +288,7 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand
            case DO_NOTIFY_TV_MESSAGE: {
                SomeArgs args = (SomeArgs) msg.obj;
                mTvInputSessionImpl.onTvMessageReceived((Integer) args.arg1, (Bundle) args.arg2);
                args.recycle();
                break;
            }
            case DO_STOP_PLAYBACK: {
@@ -301,6 +303,12 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand
                mTvInputSessionImpl.setVideoFrozen((Boolean) msg.obj);
                break;
            }
            case DO_NOTIFY_AD_SESSION_DATA: {
                SomeArgs args = (SomeArgs) msg.obj;
                mTvInputSessionImpl.notifyTvAdSessionData((String) args.arg1, (Bundle) args.arg2);
                args.recycle();
                break;
            }
            default: {
                Log.w(TAG, "Unhandled message code: " + msg.what);
                break;
@@ -487,6 +495,12 @@ public class ITvInputSessionWrapper extends ITvInputSession.Stub implements Hand
        mCaller.executeOrSendMessage(mCaller.obtainMessageO(DO_NOTIFY_AD_BUFFER, buffer));
    }

    @Override
    public void notifyTvAdSessionData(String type, Bundle data) {
        mCaller.executeOrSendMessage(
                mCaller.obtainMessageOO(DO_NOTIFY_AD_SESSION_DATA, type, data));
    }

    @Override
    public void setVideoFrozen(boolean isFrozen) {
        mCaller.executeOrSendMessage(mCaller.obtainMessageO(DO_SET_VIDEO_FROZEN, isFrozen));
Loading