如何在后台检查变量达到某个值时要执行的操作?

时间:2018-08-05 11:09:38

标签: android background

我有一个播放视频的简单VideoView:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        final VideoView videoView=findViewById(R.id.videoView);
        videoView.setVideoURI(Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.video));
        MediaController mediaController=new MediaController(this);
        videoView.setMediaController(mediaController);
        videoView.start();

        TextView textView = findViewById(R.id.textView);
    }
}

通过使用videoView.getCurrentPosition(),我可以获得正在播放的视频的当前经过的毫秒数。现在,我需要连续在后台检查此值,并在达到某个值(例如10000)时,执行一些操作(更新TextView的文本)。

这对我来说很重要,因为它是背景,这样才不会干扰视频播放。

有可能吗?

1 个答案:

答案 0 :(得分:1)

您可以通过覆盖MediaController的{​​{1}}事件来覆盖其3种方法,当然您对其中一种SeekBar感兴趣:

onProgressChanged()