diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Channel.java b/app/src/main/java/com/fongmi/android/tv/bean/Channel.java index 1d886489f..072b5a9b0 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Channel.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Channel.java @@ -4,6 +4,8 @@ import android.text.TextUtils; import android.view.View; import android.widget.ImageView; +import androidx.annotation.Nullable; + import com.fongmi.android.tv.App; import com.fongmi.android.tv.R; import com.fongmi.android.tv.utils.ImgUtil; @@ -383,7 +385,7 @@ public class Channel { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Channel it)) return false; if (!getName().isEmpty()) return getName().equals(it.getName()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Class.java b/app/src/main/java/com/fongmi/android/tv/bean/Class.java index 9f97808f0..b934f2e35 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Class.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Class.java @@ -4,6 +4,8 @@ import android.os.Parcel; import android.os.Parcelable; import android.text.TextUtils; +import androidx.annotation.Nullable; + import com.fongmi.android.tv.App; import com.github.catvod.utils.Trans; import com.google.gson.annotations.SerializedName; @@ -140,7 +142,7 @@ public class Class implements Parcelable { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Class it)) return false; return getTypeId().equals(it.getTypeId()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Config.java b/app/src/main/java/com/fongmi/android/tv/bean/Config.java index af40e0552..b5bbd307a 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Config.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Config.java @@ -3,6 +3,7 @@ package com.fongmi.android.tv.bean; import android.text.TextUtils; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.room.Entity; import androidx.room.Index; import androidx.room.PrimaryKey; @@ -274,7 +275,7 @@ public class Config { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Config it)) return false; return getId() == it.getId(); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Core.java b/app/src/main/java/com/fongmi/android/tv/bean/Core.java index d4eec0572..61b9d7192 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Core.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Core.java @@ -2,6 +2,8 @@ package com.fongmi.android.tv.bean; import android.text.TextUtils; +import androidx.annotation.Nullable; + import com.fongmi.android.tv.server.Server; import com.fongmi.android.tv.utils.UrlUtil; import com.fongmi.hook.Hook; @@ -106,7 +108,7 @@ public class Core { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Core it)) return false; return getSign().equals(it.getSign()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Danmaku.java b/app/src/main/java/com/fongmi/android/tv/bean/Danmaku.java index 909ba1ca4..d59e1ffb5 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Danmaku.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Danmaku.java @@ -55,7 +55,7 @@ public class Danmaku { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Danmaku it)) return false; return getUrl().equals(it.getUrl()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Device.java b/app/src/main/java/com/fongmi/android/tv/bean/Device.java index dfb80cb0b..7dd4c0e79 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Device.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Device.java @@ -3,6 +3,7 @@ package com.fongmi.android.tv.bean; import android.text.TextUtils; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.room.Entity; import androidx.room.Ignore; import androidx.room.Index; @@ -163,7 +164,7 @@ public class Device { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Device it)) return false; return getUuid().equals(it.getUuid()) && getName().equals(it.getName()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/EpgData.java b/app/src/main/java/com/fongmi/android/tv/bean/EpgData.java index 18bf2c365..1045c1d97 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/EpgData.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/EpgData.java @@ -102,7 +102,7 @@ public class EpgData { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof EpgData it)) return false; return getTitle().equals(it.getTitle()) && getEnd().equals(it.getEnd()) && getStart().equals(it.getStart()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Episode.java b/app/src/main/java/com/fongmi/android/tv/bean/Episode.java index 4eee0d341..1574d0a40 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Episode.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Episode.java @@ -3,6 +3,8 @@ package com.fongmi.android.tv.bean; import android.os.Parcel; import android.os.Parcelable; +import androidx.annotation.Nullable; + import com.fongmi.android.tv.App; import com.fongmi.android.tv.utils.Util; import com.github.catvod.utils.Trans; @@ -114,7 +116,7 @@ public class Episode implements Parcelable { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Episode it)) return false; return getUrl().equals(it.getUrl()) && getName().equals(it.getName()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Flag.java b/app/src/main/java/com/fongmi/android/tv/bean/Flag.java index 2986d7de1..9f46b1a1b 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Flag.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Flag.java @@ -5,6 +5,7 @@ import android.os.Parcelable; import android.text.TextUtils; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.fongmi.android.tv.App; import com.fongmi.android.tv.utils.Util; @@ -127,7 +128,7 @@ public class Flag implements Parcelable { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Flag it)) return false; return getFlag().equals(it.getFlag()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Group.java b/app/src/main/java/com/fongmi/android/tv/bean/Group.java index 7c88a5867..34bdf81d9 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Group.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Group.java @@ -2,6 +2,7 @@ package com.fongmi.android.tv.bean; import android.text.TextUtils; +import androidx.annotation.Nullable; import androidx.annotation.StringRes; import com.fongmi.android.tv.App; @@ -154,7 +155,7 @@ public class Group { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (obj == null) return false; if (this == obj) return true; if (!(obj instanceof Group it)) return false; diff --git a/app/src/main/java/com/fongmi/android/tv/bean/History.java b/app/src/main/java/com/fongmi/android/tv/bean/History.java index 0ac2f21b4..2b7782977 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/History.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/History.java @@ -4,6 +4,7 @@ import android.text.TextUtils; import android.view.View; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.media3.common.C; import androidx.room.Entity; import androidx.room.PrimaryKey; @@ -345,6 +346,13 @@ public class History { }); } + @Override + public boolean equals(@Nullable Object obj) { + if (this == obj) return true; + if (!(obj instanceof History it)) return false; + return getKey().equals(it.getKey()) && getVodName().equals(it.getVodName()) && getVodPic().equals(it.getVodPic()) && getCreateTime() == it.getCreateTime(); + } + @NonNull @Override public String toString() { diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Keep.java b/app/src/main/java/com/fongmi/android/tv/bean/Keep.java index de3a7a36a..9dd3b50e8 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Keep.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Keep.java @@ -1,6 +1,7 @@ package com.fongmi.android.tv.bean; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.room.Entity; import androidx.room.PrimaryKey; @@ -168,4 +169,11 @@ public class Keep { RefreshEvent.keep(); }); } + + @Override + public boolean equals(@Nullable Object obj) { + if (this == obj) return true; + if (!(obj instanceof Keep it)) return false; + return getKey().equals(it.getKey()) && getVodName().equals(it.getVodName()) && getVodPic().equals(it.getVodPic()) && getCreateTime() == it.getCreateTime(); + } } diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Live.java b/app/src/main/java/com/fongmi/android/tv/bean/Live.java index f11e31637..5402cd577 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Live.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Live.java @@ -3,6 +3,7 @@ package com.fongmi.android.tv.bean; import android.text.TextUtils; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.room.Entity; import androidx.room.Ignore; import androidx.room.PrimaryKey; @@ -356,7 +357,7 @@ public class Live { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Live it)) return false; return getName().equals(it.getName()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Page.java b/app/src/main/java/com/fongmi/android/tv/bean/Page.java index d6e29e241..4db3b3038 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Page.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Page.java @@ -31,7 +31,7 @@ public class Page { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Page it)) return false; return getVodId().equals(it.getVodId()) && getPosition() == it.getPosition(); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Parse.java b/app/src/main/java/com/fongmi/android/tv/bean/Parse.java index 5cccfdbb6..89bdbcb01 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Parse.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Parse.java @@ -3,6 +3,7 @@ package com.fongmi.android.tv.bean; import android.text.TextUtils; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.fongmi.android.tv.App; import com.fongmi.android.tv.R; @@ -117,7 +118,7 @@ public class Parse { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Parse it)) return false; return getName().equals(it.getName()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Rule.java b/app/src/main/java/com/fongmi/android/tv/bean/Rule.java index 7cbea9fe2..c650ad198 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Rule.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Rule.java @@ -65,7 +65,7 @@ public class Rule { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Rule it)) return false; return getName().equals(it.getName()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Site.java b/app/src/main/java/com/fongmi/android/tv/bean/Site.java index 7e8f5e25f..0a5e9caa0 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Site.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Site.java @@ -5,6 +5,7 @@ import android.os.Parcelable; import android.text.TextUtils; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import androidx.room.Entity; import androidx.room.Ignore; import androidx.room.PrimaryKey; @@ -322,7 +323,7 @@ public class Site implements Parcelable { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Site it)) return false; return getKey().equals(it.getKey()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Style.java b/app/src/main/java/com/fongmi/android/tv/bean/Style.java index 9c037a7ea..ee0c79152 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Style.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Style.java @@ -78,7 +78,7 @@ public class Style implements Parcelable { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Style it)) return false; return getType().equals(it.getType()) && getRatio() == it.getRatio(); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Sub.java b/app/src/main/java/com/fongmi/android/tv/bean/Sub.java index d1e9ccf80..4b3a69135 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Sub.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Sub.java @@ -65,7 +65,7 @@ public class Sub { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Sub it)) return false; return getUrl().equals(it.getUrl()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Value.java b/app/src/main/java/com/fongmi/android/tv/bean/Value.java index bbea7fa1f..a5cdf8ccd 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Value.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Value.java @@ -4,6 +4,8 @@ import android.os.Parcel; import android.os.Parcelable; import android.text.TextUtils; +import androidx.annotation.Nullable; + import com.github.catvod.utils.Trans; import com.google.gson.annotations.SerializedName; @@ -59,7 +61,7 @@ public class Value implements Parcelable { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Value it)) return false; return getV().equals(it.getV()); diff --git a/app/src/main/java/com/fongmi/android/tv/bean/Vod.java b/app/src/main/java/com/fongmi/android/tv/bean/Vod.java index 0c142bfdc..f2a162f99 100644 --- a/app/src/main/java/com/fongmi/android/tv/bean/Vod.java +++ b/app/src/main/java/com/fongmi/android/tv/bean/Vod.java @@ -5,6 +5,8 @@ import android.os.Parcelable; import android.text.TextUtils; import android.view.View; +import androidx.annotation.Nullable; + import com.fongmi.android.tv.App; import com.fongmi.android.tv.utils.Sniffer; import com.fongmi.android.tv.utils.Util; @@ -299,7 +301,7 @@ public class Vod implements Parcelable { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Vod it)) return false; return getVodId().equals(it.getVodId()); diff --git a/catvod/src/main/java/com/github/catvod/bean/Doh.java b/catvod/src/main/java/com/github/catvod/bean/Doh.java index ada7021c6..8e8eb3bc7 100644 --- a/catvod/src/main/java/com/github/catvod/bean/Doh.java +++ b/catvod/src/main/java/com/github/catvod/bean/Doh.java @@ -4,6 +4,7 @@ import android.content.Context; import android.text.TextUtils; import androidx.annotation.NonNull; +import androidx.annotation.Nullable; import com.github.catvod.crawler.R; import com.google.gson.Gson; @@ -78,7 +79,7 @@ public class Doh { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) return true; if (!(obj instanceof Doh it)) return false; return getUrl().equals(it.getUrl());