YouTube API для монетизации ⇐ Android
-
Anonymous
YouTube API для монетизации
Это мой Java-код для YouTube API для прямой трансляции
LiveBroadcastSnippet BroadcastSnippet = новый LiveBroadcastSnippet(); BroadcastSnippet.setTitle(имя); BroadcastSnippet.setDescription(описание); BroadcastSnippet.setScheduledStartTime(новый DateTime(futureDate)); BroadcastSnippet.set("categoryId", 17); LiveBroadcastContentDetails contentDetails = новый LiveBroadcastContentDetails (); MonitorStreamInfo MonitorStream = новый MonitorStreamInfo (); MonitorStream.setEnableMonitorStream(истина); contentDetails.setMonitorStream(monitorStream); contentDetails.setEnableAutoStart(истина); contentDetails.setEnableAutoStop(false); contentDetails.setEnableEmbed(истина); contentDetails.setEnableClosedCaptions(true); // Создание LiveBroadcastStatus со статусом конфиденциальности. Статус LiveBroadcastStatus = новый LiveBroadcastStatus(); status.setPrivacyStatus("public"); //status.setPrivacyStatus("нет в списке"); Трансляция LiveBroadcast = новая LiveBroadcast(); Broadcast.setKind("youtube#liveBroadcast"); Broadcast.setSnippet(broadcastSnippet); Broadcast.setStatus(статус); Broadcast.setContentDetails(contentDetails); LiveBroadcastMonetizationDetails monetizationDetails = новый LiveBroadcastMonetizationDetails(); CuepointSchedule cuepointSchedule = новый CuepointSchedule(); cuepointSchedule.setEnabled(истина); monetizationDetails.setCuepointSchedule(cuepointSchedule); Broadcast.setMonetizationDetails(monetizationDetails); // Создаём запрос на вставку String[] lbInsert = {"фрагмент", "статус", "contentDetails", "monetizationDetails"}; YouTube.LiveBroadcasts.Insert liveBroadcastInsert = youtube .liveBroadcasts().insert(Arrays.asList(lbInsert), транслировать); // Запрос выполняется и вставленная трансляция возвращается LiveBroadcast returnBroadcast = liveBroadcastInsert.execute(); Этот код работает нормально. Но проблема, с которой я столкнулся, заключается в том, что монетизация не включена (правда), это всегда ложь, мне приходится включать ее вручную.
Я думаю, это код, который позволяет монетизировать потоковое видео.
LiveBroadcastMonetizationDetails monetizationDetails = новый LiveBroadcastMonetizationDetails(); CuepointSchedule cuepointSchedule = новый CuepointSchedule(); cuepointSchedule.setEnabled(истина); monetizationDetails.setCuepointSchedule(cuepointSchedule); Broadcast.setMonetizationDetails(monetizationDetails); // Создаём запрос на вставку String[] lbInsert = {"фрагмент", "статус", "contentDetails", "monetizationDetails"}; YouTube.LiveBroadcasts.Insert liveBroadcastInsert = youtube .liveBroadcasts().insert(Arrays.asList(lbInsert), транслировать); Вот возвращаемое значение
{"contentDetails": {"closedCaptionsType": "closedCaptionsHttpPost", "enableAutoStart": true, "enableAutoStop": false, "enableClosedCaptions": true, "enableContentEncryption": false, "enableDvr": true, "enableEmbed": true, "enableLowLatency": false, "latencyPreference": "normal", "monitorStream": {"broadcastStreamDelayMs": 0, "embedHtml": "
\
","enableMonitorStream":true},"projection":"rectangular","recordFromStart":true,"startWithSlate":false},"etag":"WJp38q19VZEauJyCUyTVdDiVUc8"," id":"tttt","kind":"youtube#liveBroadcast","monetizationDetails":{} Хотите узнать, делаю ли я какую-нибудь ошибку?
Это мой Java-код для YouTube API для прямой трансляции
LiveBroadcastSnippet BroadcastSnippet = новый LiveBroadcastSnippet(); BroadcastSnippet.setTitle(имя); BroadcastSnippet.setDescription(описание); BroadcastSnippet.setScheduledStartTime(новый DateTime(futureDate)); BroadcastSnippet.set("categoryId", 17); LiveBroadcastContentDetails contentDetails = новый LiveBroadcastContentDetails (); MonitorStreamInfo MonitorStream = новый MonitorStreamInfo (); MonitorStream.setEnableMonitorStream(истина); contentDetails.setMonitorStream(monitorStream); contentDetails.setEnableAutoStart(истина); contentDetails.setEnableAutoStop(false); contentDetails.setEnableEmbed(истина); contentDetails.setEnableClosedCaptions(true); // Создание LiveBroadcastStatus со статусом конфиденциальности. Статус LiveBroadcastStatus = новый LiveBroadcastStatus(); status.setPrivacyStatus("public"); //status.setPrivacyStatus("нет в списке"); Трансляция LiveBroadcast = новая LiveBroadcast(); Broadcast.setKind("youtube#liveBroadcast"); Broadcast.setSnippet(broadcastSnippet); Broadcast.setStatus(статус); Broadcast.setContentDetails(contentDetails); LiveBroadcastMonetizationDetails monetizationDetails = новый LiveBroadcastMonetizationDetails(); CuepointSchedule cuepointSchedule = новый CuepointSchedule(); cuepointSchedule.setEnabled(истина); monetizationDetails.setCuepointSchedule(cuepointSchedule); Broadcast.setMonetizationDetails(monetizationDetails); // Создаём запрос на вставку String[] lbInsert = {"фрагмент", "статус", "contentDetails", "monetizationDetails"}; YouTube.LiveBroadcasts.Insert liveBroadcastInsert = youtube .liveBroadcasts().insert(Arrays.asList(lbInsert), транслировать); // Запрос выполняется и вставленная трансляция возвращается LiveBroadcast returnBroadcast = liveBroadcastInsert.execute(); Этот код работает нормально. Но проблема, с которой я столкнулся, заключается в том, что монетизация не включена (правда), это всегда ложь, мне приходится включать ее вручную.
Я думаю, это код, который позволяет монетизировать потоковое видео.
LiveBroadcastMonetizationDetails monetizationDetails = новый LiveBroadcastMonetizationDetails(); CuepointSchedule cuepointSchedule = новый CuepointSchedule(); cuepointSchedule.setEnabled(истина); monetizationDetails.setCuepointSchedule(cuepointSchedule); Broadcast.setMonetizationDetails(monetizationDetails); // Создаём запрос на вставку String[] lbInsert = {"фрагмент", "статус", "contentDetails", "monetizationDetails"}; YouTube.LiveBroadcasts.Insert liveBroadcastInsert = youtube .liveBroadcasts().insert(Arrays.asList(lbInsert), транслировать); Вот возвращаемое значение
{"contentDetails": {"closedCaptionsType": "closedCaptionsHttpPost", "enableAutoStart": true, "enableAutoStop": false, "enableClosedCaptions": true, "enableContentEncryption": false, "enableDvr": true, "enableEmbed": true, "enableLowLatency": false, "latencyPreference": "normal", "monitorStream": {"broadcastStreamDelayMs": 0, "embedHtml": "
\
","enableMonitorStream":true},"projection":"rectangular","recordFromStart":true,"startWithSlate":false},"etag":"WJp38q19VZEauJyCUyTVdDiVUc8"," id":"tttt","kind":"youtube#liveBroadcast","monetizationDetails":{} Хотите узнать, делаю ли я какую-нибудь ошибку?
Мобильная версия