Sto tentando di caricare le miniature dei video di YouTube in un RecyclerView. Sto affrontando alcuni problemiCome caricare le miniature di YouTube in un RecyclerView utilizzando l'API di YouTube
Ecco quello che sto facendo nel mio adattatore:
public static class ItemViewHolder extends RecyclerView.ViewHolder {
private YouTubeThumbnailView thumb;
public Post post;
public ItemViewHolder(View v) {
thumb = (YouTubeThumbnailView) v.findViewById(R.id.youtube_thumbnail);
}
@Override
public void onBindViewHolder(final RecyclerView.ViewHolder holder, final int position) {
if (holder instanceof ItemViewHolder) {
((ItemViewHolder) holder).thumb.initialize(YOUTUPEKEY, new YouTubeThumbnailView.OnInitializedListener() {
@Override
public void onInitializationSuccess(YouTubeThumbnailView youTubeThumbnailView, YouTubeThumbnailLoader youTubeThumbnailLoader) {
youTubeThumbnailLoader.setVideo(VIDEOID);
}
@Override
public void onInitializationFailure(YouTubeThumbnailView youTubeThumbnailView, YouTubeInitializationResult youTubeInitializationResult) {
}});
}}}
Funziona bene, ma non mi sto facendo bene. Quando sto utilizzando la stessa scheda in un'altra attività ottengo questo errore:
Activity com.example.yasser.version6.Mespublications has leaked ServiceConnection [email protected] that was originally bound here
e ci vuole tempo per caricare le miniature ed a volte mix tra loro quando strisciata.
ho aggiunto una funzione di liberare tutti i Pale Youtube:
public void ReleaseLoaders() {
for (YouTubeThumbnailLoader loader : loaders.values()) {
loader.release();
}
}
e sto chiamando questa funzione dal Activity OnStop():
@Override
public void onStop() {
super.onStop();
mAdapter.ReleaseLoaders();
}
ha funzionato bene per un certo tempo, ma a volte si blocca.
Hai controllato [questo SO biglietto] (http://stackoverflow.com/questions/1992676/i-cant -get-RID-of-questo-error-message-activity-app-name-ha-trapelato-servicecon)? Sembra che abbia lo stesso problema che stai incontrando - la perdita di memoria, non la RecyclerView, sembra che tu l'abbia già gestita. – adjuremods
L'errore proviene dall'adattatore Recylcerview –
Come si inizializza l'adattatore? – random