Autore Topic: salvataggio con numeri casuali....  (Letto 656 volte)

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
salvataggio con numeri casuali....
« il: 21 Ottobre 2013, 11:00:20 CEST »
0
ciao a tutti...stò cercando di effettuare una registrazione tramite microfono!!!

nell'esempio standard faccio un salvataggio con un solo nome...cioè se dovessi effettuare più registrazioni il salvataggio automatico mi va a sovrascrivere quello precedente...per evitare questo come faccio???

per salvare l'audio registrato scrivo questo:

Codice (Java): [Seleziona]
mFileName = root + "/audiorecord.mp3";
 private void startRecording() {
        mRecorder = new MediaRecorder();
        mRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
        mRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
        mRecorder.setOutputFile(mFileName);
        mRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
 
        try {
            //this method should be in try block because unavailability
            //of resources can throw exception
            mRecorder.prepare();
        }
        catch (IOException e) {
             
        }
        //after preparing our instance mRecorder, its time to start recording
        mRecorder.start();
    }

in questo modo vado a sovrascrivere la registrazione precedente...
come posso evitare tutto questo???
tutti possiamo programmare...basta volerlo!!!

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:salvataggio con numeri casuali....
« Risposta #1 il: 21 Ottobre 2013, 11:44:27 CEST »
0
Se la tua domanda è "come variare automaticamente il nome del file", puoi prevedere di salvare usando come nome il formato YYYYMMDD_HHMMSS_audiorecord.mp3 dove YYYYMMDD è la data e HHMMSS è l'ora.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
Re:salvataggio con numeri casuali....
« Risposta #2 il: 21 Ottobre 2013, 11:52:04 CEST »
0
se ho capito bene dovrei scrivere:

Codice (Java): [Seleziona]
...
 mRecorder.setOutputFile(YYYYMMDD_HHMMSS_audiorecord.mp3);

giusto???
tutti possiamo programmare...basta volerlo!!!

Offline gabric

  • Utente senior
  • ****
  • Post: 615
  • Respect: +18
    • Google+
    • Mostra profilo
    • Brancato's site
  • Dispositivo Android:
    Nexus 5 / Tablet mediacom s4
  • Play Store ID:
    Brancato's+app
  • Sistema operativo:
    window7. ubuntu
Re:salvataggio con numeri casuali....
« Risposta #3 il: 21 Ottobre 2013, 12:54:52 CEST »
0
ehm no
perchè in questo modo YYYYMMDD_HHMMSS_audiorecord è solo una stringa
[/size]prima devi prendere il corrente timestamp, quindi settarlo in una stringa, e usarla come nome del file

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
Re:salvataggio con numeri casuali....
« Risposta #4 il: 21 Ottobre 2013, 13:03:43 CEST »
0
ho trovato questo esempio su internet:

Codice (Java): [Seleziona]
SimpleDateFormat s = new SimpleDateFormat("ddMMyyyyhhmmss");
String format = s.format(new Date());

ma mi da errore su Date...mi dice di inserire un int o long.....

se seleziono int mi escono tre zeri mentre se seleziono un longo mi esce solo uno....

help!!! non capisco!!!

tutti possiamo programmare...basta volerlo!!!

Offline emi

  • Nuovo arrivato
  • *
  • Post: 11
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    S III
Re:salvataggio con numeri casuali....
« Risposta #5 il: 22 Ottobre 2013, 13:38:01 CEST »
0
Ciao, in alternativa potresti prendere la data convertita in millisecondi usando queste poche righe di codice:

Codice (Java): [Seleziona]
Calendar calendar = Calendar.getInstance();
              Long  fileName = calendar.getTimeInMillis();
             mFileName = root + "/"+fileName+".mp3";

Calendar ti permette di prendere la data del giorno attuale e puoi lavorarci come ti pare. In alternativa se preferisci usare il tipo Date ti conviene scrivere così:

Codice (Java): [Seleziona]
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
java.util.Date date = (java.util.Date)format.parse("2013-09-12"); //mettendo una data a mano (2013-09-12) oppure  gli puoi passare nuovamente il tipo calendar come sopra

Offline paul78

  • Utente normale
  • ***
  • Post: 359
  • Respect: +1
    • Mostra profilo
    • Android Code
  • Sistema operativo:
    Linux - Windows
Re:salvataggio con numeri casuali....
« Risposta #6 il: 22 Ottobre 2013, 14:14:34 CEST »
0
ciao emi...grazie mille!!!
tutti possiamo programmare...basta volerlo!!!

Offline emi

  • Nuovo arrivato
  • *
  • Post: 11
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    S III
Re:salvataggio con numeri casuali....
« Risposta #7 il: 24 Ottobre 2013, 20:03:39 CEST »
0
ciao emi...grazie mille!!!


diciamo che un click in alto a destra su thanks ci starebbe bene  :-P