【问题标题】:Just display notification and background app stay onResume只显示通知和后台应用保持 onResume
【发布时间】:2018-02-27 11:55:23
【问题描述】:

我有一个场景,我想在电视上开发一个应用程序,如果用户在 Youtube 上观看一些视频,如果我想加载我的应用程序,那么它将在前台启动,我将显示一些具有透明背景的信息并且后面的应用程序将继续工作,就像如果后面的应用程序是 Youtube,那么它应该按原样播放而不会暂停。

如果可能,请帮助我?如果是,那我该如何实现呢?

【问题讨论】:

    标签: android android-tv


    【解决方案1】:

    在 Manifest 中将 Activity 主题定义为透明:

    <activity android:name=".YourActivity" android:theme="@android:style/Theme.Translucent.NoTitleBar" />
    

    对于 Transulent Activity 生命周期不同于 Non-transulent Activity :

    对于非透明的 Activity-A,如果任何其他 Activity-B 出现在上面 则 Activity-A 将处于 onStop 状态。

    Activity-A 如果任何其他 Activity-B 出现在它之上,那么 Activity-A 将处于 onPause 状态但对于 Transulent 而言

    然后这样做:

    @Override
        public void onPause() {
          super.onPause();
          if (mVideoView.isPlaying()) {
            // Argument equals true to notify the system that the activity
            // wishes to be visible behind other translucent activities
            if (! requestVisibleBehind(true)) {
              // App-specific method to stop playback and release resources
              // because call to requestVisibleBehind(true) failed
              stopPlayback();
            }
          } else {
            // Argument equals false because the activity is not playing
            requestVisibleBehind(false);
          }
        }
    

    我确实实现了它,它确实会帮助你 :

    https://developer.android.com/training/tv/playback/options.html

    如果您的要求与画中画有关,请尝试以下操作:

    https://developer.android.com/guide/topics/ui/picture-in-picture.html

    【讨论】:

    • 你是对的 Jeelan,但我不想在后台运行我的应用程序,而是我想继续播放其他应用程序,例如 Youtube,就像我的应用程序启动其他应用程序时仍然可以正常工作一样onPause 或 onStop 模式
    • 以上描述是指只有提供的应用程序,如 Youtube 或其他应该有实现 - > 例如,视频正在使用远程播放在前台你启动你的应用程序应该是透明的,然后只有后台应用程序才会有播放视频的能力。结论是你的活动主题应该是透明的。
    猜你喜欢
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多