2015-12-15 3 views
2

Есть ли способ подключения к ChromeCast с использованием стандартной (настольной) Java. Я ищу способ автоматизации нашего тестирования и хотел бы, чтобы наши CC: s автоматически воспроизводили видео.Java API для ChromeCast

До сих пор я нашел этот проект:

https://github.com/vitalidze/chromecast-java-api-v2

Но до сих пор я не смог заставить его работать.

Я могу найти Chromecast просто отлично, используя mDNS, но когда я пытаюсь подключиться к нему, я просто подхожу от CC.

Мой testcode:

public static void main(String[] args) { 
    try { 

     ChromeCasts.startDiscovery(); 

     // Wait for CC:s to apear 
     Thread.sleep(5000); 

     for (ChromeCast cc : ChromeCasts.get()) { 

      if (cc.getName().equals("cc02")) { 
       cc.connect(); 

       Status status = cc.getStatus(); 

       cc.disconnect(); 
      } 
     } 
    } catch (Exception e) { 
     e.printStackTrace(); 
    } 
} 

В результате из журнала:

2015-12-15 19: 14: 37727 ОТЛАДКА [Основной] su.litvak.chromecast.api.v2.Channel - -> {«type»: «StandardMessage $ Ping»} 2015-12-15 19: 14: 37 769 DEBUG [main] su.litvak.chromecast.api.v2.Channel - -> {"type": " StandardMessage $ Connect "," origin ": {}} 2015-12-15 19: 14: 37,794 DEBUG [main] su.litvak.chromecast.api.v2.Channel - -> {" type ":" StandardRequest $ Статус "," requestId ": 1} 2015-12-15 19: 14: 37,802 DEBUG [Thread-4] su .litvak.chromecast.api.v2.Channel - < - {"type": "CLOSE"} Исключение в теме "Thread-4" java.lang.NoSuchMethodError: org.codehaus.jackson.JsonNode.has (Ljava/lang/String;) Z at su.litvak.chromecast.api.v2.Channel $ ReadThread.run (Channel.java:127) 2015-12-15 19: 14: 38,771 DEBUG [sender-7hhge79m75 PING] su. litvak.chromecast.api.v2.Channel - -> {"type": "StandardMessage $ Ping"}

У меня есть ответ на код. Поэтому я отвечу на свой вопрос.

Да, это возможно, но официально не поддерживается Google. Проблема с приведенным выше кодом возникла из старого парсера джексона, который я использовал.

Вышеупомянутые проекты прекрасно подходят для нашего использования. Мы думаем о его расширении.

ответ

0

Нет, вам нужно использовать Cast SDK, который доступен на Android, iOS и Chrome. Альтернативный подход заключается в использовании литого устройства с использованием API-интерфейсов чистых медиа-маршрутизаторов, которые снова требуют платформы Android и т. Д.

0

У вас одинаковая зависимость с различными версиями в вашем проекте. Возможно, у вас есть два проекта, имеющих зависимость от Джексона, но в разных версиях.

NoSuchMethodError: org.codehaus.jackson.JsonNode.has(Ljava/lang/String;)

О chromecast-java-api-v2, его работы очень хорошо, но вам нужен медиа-сервер, то Chromecast-ява-апи-v2 вы запрашиваете для CHROMECAST воспроизведения файлов с URL.

Смежные вопросы