Я имею в виде https://developers.google.com/cast/docs/reference/ios/interface_g_c_k_media_status.html#a45e3eb39e674f5d0dbfd78deef77a1e6прибудет mediaSessionID для текущего средства массовой информации играет на хромированной гипсе в Swift на прошивке
, который помогает мне с апи, но инициализатор для класса GCKMediaStatus говорит: - (instancetype) initWithSessionID: (NSInteger) mediaSessionID mediaInformation: (GCKMediaInformation *) mediaInformation
примечание: это в Objective-C синтаксисом, но Swift работает точно так же, за исключением Swift языка ...
Тем не менее я не могу понять как получить m ediaSessionID, чтобы иметь возможность инициализировать экземпляр этого класса для новой переменной.
Я пытаюсь сделать следующее, чтобы получить меня в конце концов к методу в этом классе под названием streamPosition, который будет идти, как это:
var mediaStatus = GCKMediaStatus(sessionID: Int, mediaInformation: GCKMediaInformation!)
var currentStreamPosition = mediaStatus.streamPosition()
где Int будет в mediaSessionID НЕ SESSIONID хромового гипса (читайте дополнительный раздел ниже!) и GCKMediaInformation! будет экземпляром класса GCKMediaInformation. (Я думаю) исправьте меня, если я ошибаюсь ни по одному из этих параметров.
Тогда я мог бы использовать эти данные. Но когда я делаю это, currentStreamPosition, я полагаю, по умолчанию 0, и это то, что я получаю, когда печатаю текущую переменную currentStreamPosition.
Примечание: я уже подключен к текущему воспроизводимому носителю, и я могу приостановить, воспроизвести и искать произвольное число в потоке. Все это работает. Итак, теперь я подключен, и все остальное работает.
прецедент: я хочу пропустить 15 секунд или перемотать 15 секунд и т. Д. С использованием этого метода, но я не нашел ничего, чтобы помочь.
также - не получаю sessionID путать с mediaSessionID !! Я могу получить sessionID успешно и распечатать его. Моя проблема связана с mediaSessionID.
Дополнительная информация: автозаполнения Xcode говорит, что это параметры, помеченные имена:
GCKMediaStatus(sessionID: Int, mediaInformation: GCKMediaInformation!)
примечания первый параметр говорит SESSIONID и имеет типа междунар. Но на https://developers.google.com/cast/docs/ios_sender, если вы заметили sessionID имеет тип String! (необязательная строка).
Я думаю, что эта метка была неправильно названа в Xcode для автозаполнения. Я думаю, что его следует называть mediaSessionID и NOT sessionID, так как это то, что документация показывает в первой ссылке, которую я предоставил.
Любая помощь будет высоко оценена.
Спасибо!
Кажется, у вас уже есть ссылка на GCKMediaControlChannel (который, предположительно, используется для воспроизведения/паузы/... носителя). Если это так, то вы можете получить ссылку на GCKMediaStatus через свойство mediaStatus GCKMediaControlChannel. Это то, что вы хотите получить? –
@AliNaddaf очень умный ... вы правы, но когда я делаю mediaControlChannel! .pause() <-, который работает тогда: var temp = mediaStatus ?.streamPosition «temp» ничтожно, поэтому я не инициализирую правильно, я думаю. Я не уверен –
Предлагаю вам внимательно посмотреть пример приложения CastVideos-ios (https://github.com/googlecast/CastVideos-ios), чтобы узнать, как это происходит. –