pull/501/head
okjack 2 years ago
parent 8432cf7e7a
commit 515231f69d
  1. 2
      app/src/main/java/com/fongmi/android/tv/bean/CastVideo.java
  2. 8
      app/src/main/java/com/fongmi/android/tv/bean/Device.java
  3. 2
      app/src/main/java/com/fongmi/android/tv/event/ScanEvent.java
  4. 2
      app/src/main/java/com/fongmi/android/tv/utils/ScanTask.java
  5. 2
      app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
  6. 2
      app/src/mobile/java/com/fongmi/android/tv/ui/activity/ScanActivity.java
  7. 2
      app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java
  8. 18
      app/src/mobile/java/com/fongmi/android/tv/ui/dialog/CastDialog.java
  9. 4
      app/src/mobile/java/com/fongmi/android/tv/ui/dialog/SyncDialog.java
  10. 4
      app/src/mobile/java/com/fongmi/android/tv/ui/dialog/TransmitDialog.java
  11. 10
      app/src/mobile/java/com/fongmi/android/tv/utils/DLNADevice.java

@ -1,4 +1,4 @@
package com.fongmi.android.tv.cast;
package com.fongmi.android.tv.bean;
import android.net.Uri;

@ -41,6 +41,14 @@ public class Device {
return device;
}
public static Device get(org.fourthline.cling.model.meta.Device<?, ?, ?> item) {
Device device = new Device();
device.setUuid(item.getIdentity().getUdn().getIdentifierString());
device.setName(item.getDetails().getFriendlyName());
device.setType(2);
return device;
}
public static Device objectFrom(String str) {
return App.gson().fromJson(str, Device.class);
}

@ -1,4 +1,4 @@
package com.fongmi.android.tv.cast;
package com.fongmi.android.tv.event;
import org.greenrobot.eventbus.EventBus;

@ -1,4 +1,4 @@
package com.fongmi.android.tv.cast;
package com.fongmi.android.tv.utils;
import com.fongmi.android.tv.App;
import com.fongmi.android.tv.bean.Device;

@ -35,7 +35,7 @@ import com.fongmi.android.tv.bean.Group;
import com.fongmi.android.tv.bean.Keep;
import com.fongmi.android.tv.bean.Live;
import com.fongmi.android.tv.bean.Track;
import com.fongmi.android.tv.cast.CastVideo;
import com.fongmi.android.tv.bean.CastVideo;
import com.fongmi.android.tv.databinding.ActivityLiveBinding;
import com.fongmi.android.tv.event.ActionEvent;
import com.fongmi.android.tv.event.ErrorEvent;

@ -8,7 +8,7 @@ import android.os.Bundle;
import androidx.annotation.NonNull;
import androidx.viewbinding.ViewBinding;
import com.fongmi.android.tv.cast.ScanEvent;
import com.fongmi.android.tv.event.ScanEvent;
import com.fongmi.android.tv.databinding.ActivityScanBinding;
import com.fongmi.android.tv.ui.base.BaseActivity;
import com.fongmi.android.tv.utils.Util;

@ -54,7 +54,7 @@ import com.fongmi.android.tv.bean.Site;
import com.fongmi.android.tv.bean.Sub;
import com.fongmi.android.tv.bean.Track;
import com.fongmi.android.tv.bean.Vod;
import com.fongmi.android.tv.cast.CastVideo;
import com.fongmi.android.tv.bean.CastVideo;
import com.fongmi.android.tv.databinding.ActivityVideoBinding;
import com.fongmi.android.tv.db.AppDatabase;
import com.fongmi.android.tv.event.ActionEvent;

@ -22,10 +22,10 @@ import com.fongmi.android.tv.R;
import com.fongmi.android.tv.api.config.VodConfig;
import com.fongmi.android.tv.bean.Device;
import com.fongmi.android.tv.bean.History;
import com.fongmi.android.tv.cast.CastDevice;
import com.fongmi.android.tv.cast.CastVideo;
import com.fongmi.android.tv.cast.ScanEvent;
import com.fongmi.android.tv.cast.ScanTask;
import com.fongmi.android.tv.utils.DLNADevice;
import com.fongmi.android.tv.bean.CastVideo;
import com.fongmi.android.tv.event.ScanEvent;
import com.fongmi.android.tv.utils.ScanTask;
import com.fongmi.android.tv.databinding.DialogDeviceBinding;
import com.fongmi.android.tv.server.Server;
import com.fongmi.android.tv.ui.activity.ScanActivity;
@ -128,7 +128,7 @@ public class CastDialog extends BaseDialog implements DeviceAdapter.OnClickListe
private void getDevice() {
if (fm) adapter.addAll(Device.getAll());
adapter.addAll(CastDevice.get().getAll());
adapter.addAll(DLNADevice.get().getAll());
}
private void initDLNA() {
@ -163,12 +163,12 @@ public class CastDialog extends BaseDialog implements DeviceAdapter.OnClickListe
@Override
public void onDeviceAdded(@NonNull org.fourthline.cling.model.meta.Device<?, ?, ?> device) {
adapter.addAll(CastDevice.get().add(device));
adapter.addAll(DLNADevice.get().add(device));
}
@Override
public void onDeviceRemoved(@NonNull org.fourthline.cling.model.meta.Device<?, ?, ?> device) {
adapter.remove(CastDevice.get().remove(device));
adapter.remove(DLNADevice.get().remove(device));
}
@Override
@ -205,14 +205,14 @@ public class CastDialog extends BaseDialog implements DeviceAdapter.OnClickListe
@Override
public void onItemClick(Device item) {
if (item.isDLNA()) control = DLNACastManager.INSTANCE.connectDevice(CastDevice.get().find(item), this);
if (item.isDLNA()) control = DLNACastManager.INSTANCE.connectDevice(DLNADevice.get().find(item), this);
else OkHttp.newCall(client, item.getIp().concat("/action?do=cast"), body.build()).enqueue(this);
}
@Override
public void onDestroyView() {
super.onDestroyView();
CastDevice.get().disconnect();
DLNADevice.get().disconnect();
EventBus.getDefault().unregister(this);
DLNACastManager.INSTANCE.unregisterListener(this);
DLNACastManager.INSTANCE.unbindCastService(App.get());

@ -17,8 +17,8 @@ import com.fongmi.android.tv.bean.Config;
import com.fongmi.android.tv.bean.Device;
import com.fongmi.android.tv.bean.History;
import com.fongmi.android.tv.bean.Keep;
import com.fongmi.android.tv.cast.ScanEvent;
import com.fongmi.android.tv.cast.ScanTask;
import com.fongmi.android.tv.event.ScanEvent;
import com.fongmi.android.tv.utils.ScanTask;
import com.fongmi.android.tv.databinding.DialogDeviceBinding;
import com.fongmi.android.tv.impl.Callback;
import com.fongmi.android.tv.ui.activity.ScanActivity;

@ -13,8 +13,8 @@ import com.fongmi.android.tv.App;
import com.fongmi.android.tv.Constant;
import com.fongmi.android.tv.api.config.VodConfig;
import com.fongmi.android.tv.bean.Device;
import com.fongmi.android.tv.cast.ScanEvent;
import com.fongmi.android.tv.cast.ScanTask;
import com.fongmi.android.tv.event.ScanEvent;
import com.fongmi.android.tv.utils.ScanTask;
import com.fongmi.android.tv.databinding.DialogDeviceBinding;
import com.fongmi.android.tv.impl.Callback;
import com.fongmi.android.tv.server.Server;

@ -1,4 +1,4 @@
package com.fongmi.android.tv.cast;
package com.fongmi.android.tv.utils;
import com.android.cast.dlna.dmc.DLNACastManager;
import com.fongmi.android.tv.bean.Device;
@ -6,19 +6,19 @@ import com.fongmi.android.tv.bean.Device;
import java.util.ArrayList;
import java.util.List;
public class CastDevice {
public class DLNADevice {
private final List<org.fourthline.cling.model.meta.Device<?, ?, ?>> devices;
private static class Loader {
static volatile CastDevice INSTANCE = new CastDevice();
static volatile DLNADevice INSTANCE = new DLNADevice();
}
public static CastDevice get() {
public static DLNADevice get() {
return Loader.INSTANCE;
}
public CastDevice() {
public DLNADevice() {
this.devices = new ArrayList<>();
}
Loading…
Cancel
Save