Salvare e caricare i preferiti degli stream di annunci
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Questa guida spiega come implementare l'aggiunta ai preferiti utilizzando l'SDK IMA DAI
quando si utilizza l'inserimento di annunci dinamici (DAI) per gli stream video on demand (VOD).
Questo presuppone che l'implementazione IMA DAI funzioni correttamente, come quella presentata in
Inizia.
Che cos'è l'aggiunta ai preferiti?
L'aggiunta ai preferiti consente di salvare e tornare a un punto specifico
nello stream di contenuti. Supponiamo che un utente guardi cinque minuti di contenuti
esce dal video stream e poi vi torna. L'aggiunta di segnalibri salva
la posizione dell'utente nello stream, in modo che quest'ultimo possa riprendere da dove
interrotto, offrendo allo spettatore un'esperienza fluida.
L'inserimento di annunci dinamici nei segnalibri
Quando aggiungi uno stream DAI ai preferiti, devi registrare l'ID e l'ora dello streaming
quando l'utente abbandona il video. Quando l'utente ritorna, richiedi di nuovo
per avviare lo streaming e la ricerca
fino al tempo risparmiato. Poiché ogni istanza della richiesta
lo stream può includere interruzioni pubblicitarie di durata diversa semplicemente salvando lo stream
tempo non funzionerà. Quello che vogliamo fare è continuare
tempo dei contenuti.
Metodi di conversione in soccorso
L'SDK IMA DAI fornisce un paio di metodi per richiedere l'ora dei contenuti
per un determinato tempo di streaming e la durata dello streaming per un determinato contenuti
volta. Con questi metodi di conversione puoi memorizzare i preferiti
tempo dei contenuti e poi cerca la durata dello streaming corrispondente tra
la nuova istanza del flusso. Ecco l'approccio, incluso un link
a un'app di esempio che mostra un'implementazione funzionante dei preferiti.
Carica il preferito quando richiedi di nuovo uno stream. Fa parte dell'implementazione
l'interfaccia VideoStreamPlayer.
publicvoidloadUrl(Stringurl,List<HashMap<String,String>>subtitles){//Setvideoplayer's stream URL and subtitles, and play the stream....//Bookmarking.if(bookmarkTime > 0){doublestreamTime=streamManager.getStreamTimeForContentTime(bookmarkTime);videoPlayer.seek((long)(streamTime*1000.0));//stoms.}}
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-08-21 UTC."],[[["\u003cp\u003eThis guide explains how to implement bookmarking in video-on-demand (VOD) streams using the IMA DAI SDK for a seamless viewing experience.\u003c/p\u003e\n"],["\u003cp\u003eBookmarking involves saving the user's content time, not just stream time, to ensure accurate playback resumption.\u003c/p\u003e\n"],["\u003cp\u003eThe IMA DAI SDK provides methods to convert between stream time and content time for bookmarking purposes.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can save bookmarks when the activity is paused and load them when the stream is re-requested.\u003c/p\u003e\n"],["\u003cp\u003eA sample app demonstrating bookmarking implementation is available on GitHub.\u003c/p\u003e\n"]]],["Bookmarking in IMA DAI involves saving the user's position in a video stream for later continuation. Instead of recording the stream time, the key is to save the content time. When a user leaves, record the stream ID and convert the current stream time to content time using `getContentTimeForStreamTime()`. Upon return, re-request the stream and use `getStreamTimeForContentTime()` to find the corresponding stream time to seek to. Bookmarks are saved when the `Activity` pauses and loaded when re-requesting a stream.\n"],null,["# Save and load ad stream bookmarks\n\nThis guide shows how to implement bookmarking using the IMA DAI SDK\nwhen using Dynamic Ad Insertion (DAI) for video-on-demand (VOD) streams.\nThis assumes a working IMA DAI implementation, such as the one presented in\n\n\n[Get Started](/interactive-media-ads/docs/sdks/android/dai-quickstart).\n\n\nWhat is bookmarking?\n--------------------\n\nBookmarking is the ability to save and then return to a specific point\nin the content stream. Suppose a user watches five minutes of content,\nleaves the video stream, and then returns to it. Bookmarking saves the\nuser's position in the stream so the stream can pick up from where it\nleft off, providing a seamless experience to the viewer.\n\nDAI bookmarking under the hood\n------------------------------\n\nWhen bookmarking a DAI stream, you must record the stream id and time\nwhen the user leaves the video. When the user returns, re-request the\nstream and seek to the saved time. Since each instance of the requested\nstream can have ad breaks of different durations simply saving the stream\ntime won't work. What you really want to do is continue from the same\n**content time**.\n\nConversion methods to the rescue\n--------------------------------\n\nThe IMA DAI SDK provides a pair of methods to request the **content time**\nfor a given **stream time** and the **stream time** for a given **content\ntime** . Using these conversion methods you can store the bookmarked\n**content time** and then seek to the corresponding **stream time** in\nthe new instance of the stream. Here's the approach, including a link\nto a sample app that shows a working bookmarking implementation.\n\nSaving bookmarks\n----------------\n\nSave a bookmark when the `Activity` is paused. \n\n private double bookmarkTime;\n @Override\n public void onPause() {\n super.onPause();\n double streamTime = videoPlayer.getCurrentPosition() / 1000.0; // ms to s.\n bookmarkTime = streamManager.getContentTimeForStreamTime(streamTime);\n }\n\nLoading bookmarks\n-----------------\n\nLoad the bookmark when re-requesting a stream. It's part of implementing\nthe `VideoStreamPlayer` interface. \n\n public void loadUrl(String url, List\u003cHashMap\u003cString, String\u003e\u003e subtitles) {\n // Set video player's stream URL and subtitles, and play the stream.\n ...\n\n // Bookmarking.\n if (bookmarkTime \u003e 0) {\n double streamTime =\n streamManager.getStreamTimeForContentTime(bookmarkTime);\n videoPlayer.seek((long) (streamTime * 1000.0)); // s to ms.\n }\n }\n\nSample app\n----------\n\n[Download the Sample app](//github.com/googleads/googleads-ima-android-dai)\nto see a bookmarking implementation."]]