簡體   English   中英

如何觀察一個方法 String 每秒的返回值?

[英]How observe a method String return value every second?

我需要觀察一個字符串,它是應用程序的頂級包名稱及其對某些內容的更改。 我試圖做這樣的事情:

getObservable()
                .distinctUntilChanged()
                .subscribeOn(Schedulers.newThread())
                .observeOn(AndroidSchedulers.mainThread())
                .subscribeWith(disposableObserver);

public  Observable<String> getObservable() {
    return Observable.just(getTopPackageName()).delay(1000, TimeUnit.MILLISECONDS).repeat();
}
String getTopPackageName(){
   // return top package name;
}

我希望每秒鍾都更改頂級包,如果它沒有更改並且前一個頂級包仍然什么都不做。 我不知道該怎么做

只需更改您的getObservable()方法:

public  Observable<String> getObservable() {
    return Observable.interval(1, TimeUnit.SECONDS).map(v -> getTopPackageName());
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM