Autore Topic: restart video onrotation  (Letto 725 volte)

Offline digester

  • Nuovo arrivato
  • *
  • Post: 25
  • Respect: 0
    • Mostra profilo
restart video onrotation
« il: 07 Giugno 2011, 18:34:23 CEST »
0
Ciao a tutti,

ho un piccolo problema con la rotazione dell'attività...
praticamente parte il video, poi quando ruoto il telefono il video ricomincia da capo.
Vorrei farlo ripartire dal punto in cui era arrivato.
Ho provato con onConfigurationChanged ma non riesco a catturare a che punto era arrivato il filmato...

avete qualche idea?
grazie

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:restart video onrotation
« Risposta #1 il: 07 Giugno 2011, 18:56:31 CEST »
0
avete qualche idea?

Che classe usi per riprodurre il video? (volevo leggermi la documentazione)
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline digester

  • Nuovo arrivato
  • *
  • Post: 25
  • Respect: 0
    • Mostra profilo
Re:restart video onrotation
« Risposta #2 il: 07 Giugno 2011, 19:02:15 CEST »
0
questo è il codice che sto usando...
grazie
Codice (Java): [Seleziona]
        liveView = (VideoView)findViewById(R.id.videoplayview);
        MediaController mediaController = new MediaController(this);
        mediaController.setAnchorView(liveView);
        liveView.setMediaController(mediaController);
        liveView.setVideoPath(videoUrl);
        //liveView.seekTo(...);
        liveView.start();
       
        liveView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
            @Override
            public void onCompletion(MediaPlayer mp) {
                finish();
            }
        });
« Ultima modifica: 07 Giugno 2011, 19:12:06 CEST da bradipao, Reason: Prego usare il tag JAVA per il codice java, non quello XML »

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:restart video onrotation
« Risposta #3 il: 07 Giugno 2011, 19:18:12 CEST »
0
Hai provato ad usare la funzione getCurrentPosition del MediaPlayer?
MediaPlayer | Android Developers
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline digester

  • Nuovo arrivato
  • *
  • Post: 25
  • Respect: 0
    • Mostra profilo
Re:restart video onrotation
« Risposta #4 il: 07 Giugno 2011, 19:37:50 CEST »
0
si, però non saprei quando usare questo metodo.
Nel senso che se lo uso nel onConfigurationChanged è troppo tardi, perchè il video si è già "azzerato"...

mi servirebbe un metodo che viene lanciato prima che l'attività venga ricaricata...

Offline digester

  • Nuovo arrivato
  • *
  • Post: 25
  • Respect: 0
    • Mostra profilo
Re:restart video onrotation
« Risposta #5 il: 07 Giugno 2011, 19:51:34 CEST »
0
trovato, praticamente ho remmato le righe sotto che lascio a scopo documentativo

Codice (XML): [Seleziona]
   public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        //setContentView(R.layout.videoplay);  //con questo ricreava l'attività vuota
        //loadVideo(); //con questo ripartiva il video
    }

Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:restart video onrotation
« Risposta #6 il: 07 Giugno 2011, 23:47:55 CEST »
0
trovato, praticamente ho remmato le righe sotto che lascio a scopo documentativo

Codice (XML): [Seleziona]
   public void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        //setContentView(R.layout.videoplay);  //con questo ricreava l'attività vuota
        //loadVideo(); //con questo ripartiva il video
    }
non ti bastava fare il get nella onPause?
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline digester

  • Nuovo arrivato
  • *
  • Post: 25
  • Respect: 0
    • Mostra profilo
Re:restart video onrotation
« Risposta #7 il: 08 Giugno 2011, 00:49:31 CEST »
0
Non saprei .... Non penso che la mia sia la soluzione migliore...
Se mi spieghi meglio cosa intendi posso provare la tua soluzione

 Grazie

Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:restart video onrotation
« Risposta #8 il: 08 Giugno 2011, 08:12:00 CEST »
0
Nella on pause recuperi la current position del video,che poi usi nella onresume per far ripartire il video alla posizione desiderata
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline digester

  • Nuovo arrivato
  • *
  • Post: 25
  • Respect: 0
    • Mostra profilo
Re:restart video onrotation
« Risposta #9 il: 08 Giugno 2011, 16:12:35 CEST »
0
ho provato a fare quanto mi hai suggerito...
mi da problemi perchè se salvo la current position in una variabile che poi nell'onResume la trovo azzerata..
mentre nell'onrestart la variabile della current position è ancora "buona" ed il giochetto funziona...
questo va bene solo se esco dall'applicazione...

Offline Nicola_D

  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:restart video onrotation
« Risposta #10 il: 08 Giugno 2011, 17:00:22 CEST »
0
ho provato a fare quanto mi hai suggerito...
mi da problemi perchè se salvo la current position in una variabile che poi nell'onResume la trovo azzerata..
mentre nell'onrestart la variabile della current position è ancora "buona" ed il giochetto funziona...
questo va bene solo se esco dall'applicazione...
non devi salvarla in una variabile ma nel bundle della onPause e poi recuperarla dal bundle della OnResume!
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline digester

  • Nuovo arrivato
  • *
  • Post: 25
  • Respect: 0
    • Mostra profilo
Re:restart video onrotation
« Risposta #11 il: 08 Giugno 2011, 17:21:21 CEST »
0
hai ragione.. perfetto!!!
grazie