Support live boot

pull/123/head
FongMi 3 years ago
parent e84c50e64a
commit 00ead3eb43
  1. 14
      app/src/main/java/com/fongmi/android/tv/App.java
  2. 2
      app/src/main/java/com/fongmi/android/tv/api/LiveConfig.java
  3. 6
      app/src/main/java/com/fongmi/android/tv/bean/Live.java

@ -34,7 +34,7 @@ public class App extends Application {
return instance;
}
public static Activity getActivity() {
public static Activity activity() {
return get().activity;
}
@ -70,32 +70,32 @@ public class App extends Application {
registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
@Override
public void onActivityCreated(@NonNull Activity activity, @Nullable Bundle savedInstanceState) {
if (activity != getActivity()) setActivity(activity);
if (activity != activity()) setActivity(activity);
}
@Override
public void onActivityStarted(@NonNull Activity activity) {
if (activity != getActivity()) setActivity(activity);
if (activity != activity()) setActivity(activity);
}
@Override
public void onActivityResumed(@NonNull Activity activity) {
if (activity != getActivity()) setActivity(activity);
if (activity != activity()) setActivity(activity);
}
@Override
public void onActivityPaused(@NonNull Activity activity) {
if (activity == getActivity()) setActivity(null);
if (activity == activity()) setActivity(null);
}
@Override
public void onActivityStopped(@NonNull Activity activity) {
if (activity == getActivity()) setActivity(null);
if (activity == activity()) setActivity(null);
}
@Override
public void onActivityDestroyed(@NonNull Activity activity) {
if (activity == getActivity()) setActivity(null);
if (activity == activity()) setActivity(null);
}
@Override

@ -9,6 +9,7 @@ import com.fongmi.android.tv.bean.Keep;
import com.fongmi.android.tv.bean.Live;
import com.fongmi.android.tv.db.AppDatabase;
import com.fongmi.android.tv.net.Callback;
import com.fongmi.android.tv.ui.activity.LiveActivity;
import com.fongmi.android.tv.utils.Json;
import com.fongmi.android.tv.utils.Prefers;
import com.google.gson.JsonElement;
@ -103,6 +104,7 @@ public class LiveConfig {
if (!object.has("lives")) return;
for (JsonElement element : Json.safeListElement(object, "lives")) parse(Live.objectFrom(element).check());
if (home == null) setHome(lives.isEmpty() ? new Live() : lives.get(0));
if (home.isBoot()) App.post(() -> LiveActivity.start(App.activity()));
}
private void parse(Live live) {

@ -14,6 +14,8 @@ public class Live {
@SerializedName("type")
private int type;
@SerializedName("boot")
private boolean boot;
@SerializedName("name")
private String name;
@SerializedName("group")
@ -56,6 +58,10 @@ public class Live {
return type;
}
public boolean isBoot() {
return boot;
}
public String getName() {
return TextUtils.isEmpty(name) ? "" : name;
}

Loading…
Cancel
Save