Ir al contenido



Foto

Share Audio MP3

Share Audio MP3 Share MP3 Audio

  • Por favor identifícate para responder
25 respuestas en este tema

#21 wolfran_hack

wolfran_hack

    Member

  • Miembros
  • PipPip
  • 17 mensajes

Escrito 17 marzo 2016 - 09:47

Ahora si!!!


delphi
  1. var
  2. an_intent: JIntent;
  3. con42: String;
  4. Uri: Jnet_Uri;
  5. fileuri: JParcelable;
  6.  
  7. begin
  8.  
  9. //Copiamos el archivo a Temp.
  10. TFile.Copy(TPath.GetDocumentsPath + PathDelim + 'archivo.mp3', TPath.GetTempPath + PathDelim + 'archivo.mp3');
  11.  
  12. //el archivo temporal.
  13. con42 := TPath.GetTempPath + PathDelim + 'archivo.mp3';
  14.  
  15. an_intent := TJIntent.Create;
  16. an_intent.setAction (TJIntent.JavaClass.ACTION_SEND);
  17. an_intent.setType (StringToJString('audio/mpeg3'));
  18. fileuri := JParcelable (TJNet_Uri.JavaClass.fromFile
  19. (TJFile.JavaClass.init (StringToJString (con42))));
  20. an_intent.putExtra (TJIntent.JavaClass.EXTRA_STREAM, fileuri);
  21. SharedActivity.startActivity (TJIntent.JavaClass.createChooser
  22. (an_intent, StrToJCharSequence ('Share With')));


  • 1

#22 wolfran_hack

wolfran_hack

    Member

  • Miembros
  • PipPip
  • 17 mensajes

Escrito 17 marzo 2016 - 10:01

un unico problemita, una vez que toco el boton de play o el de share si quiero hacerlo una vez mas me dice: "The Specified file already exists." y no me deja compartirlo?


  • 0

#23 wolfran_hack

wolfran_hack

    Member

  • Miembros
  • PipPip
  • 17 mensajes

Escrito 17 marzo 2016 - 12:03

Ahora cambie el Code:


delphi
  1. var
  2. Intent,an_intent: JIntent;
  3. con42: String;
  4. Uri: Jnet_Uri;
  5. fileuri: JParcelable;
  6. begin
  7. //si existe: lo eliminamos
  8. if FileExists(TPath.GetTempPath + PathDelim + 'archivo.mp3') then
  9. TFile.Delete(TPath.GetTempPath + PathDelim + 'archivo.mp3')
  10. else
  11. //Copia el Archivo a Directorio Temp.
  12. TFile.Copy(TPath.GetDocumentsPath + PathDelim + 'archivo.mp3', TPath.GetTempPath + PathDelim + 'archivo.mp3');
  13.  
  14. //Tomamos el Archivo de Temp.
  15. con42 := TPath.GetTempPath + PathDelim + 'archivo.mp3';
  16.  
  17. an_intent := TJIntent.Create;
  18. an_intent.setAction (TJIntent.JavaClass.ACTION_SEND);
  19. an_intent.setType (StringToJString('audio/mpeg3'));
  20. fileuri := JParcelable (TJNet_Uri.JavaClass.fromFile(TJFile.JavaClass.init (StringToJString (con42))));
  21. an_intent.putExtra (TJIntent.JavaClass.EXTRA_STREAM, fileuri);
  22. SharedActivity.startActivity (TJIntent.JavaClass.createChooser(an_intent, StrToJCharSequence ('Share With')));

y ahora no se cuelga, pero al segundo intento de envió da el error y luego al tercero si lo deja envíar.


  • 0

#24 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.119 mensajes
  • LocationRepública Dominicana

Escrito 17 marzo 2016 - 01:08

Debes primero copiar el archivo y luego borrarlo, lo estás haciendo al revés.


  • 0

#25 wolfran_hack

wolfran_hack

    Member

  • Miembros
  • PipPip
  • 17 mensajes

Escrito 21 marzo 2016 - 01:55

Lo que hice fue:


delphi
  1. //Copia el Archivo a Directorio Temp. Si no se copia no se puede enviar.
  2. TFile.Copy(TPath.GetDocumentsPath + PathDelim + 'archivo.mp3', TPath.GetTempPath + PathDelim + 'archivo.mp3');
  3.  
  4. //Tomamos el Archivo de Temp.
  5. con42 := TPath.GetTempPath + PathDelim + 'archivo.mp3';

y listo!


  • 0

#26 Agustin Ortu

Agustin Ortu

    Advanced Member

  • Moderadores
  • PipPipPip
  • 712 mensajes
  • LocationArgentina

Escrito 21 marzo 2016 - 03:05

Fantastico, en algun momento estoy seguro de que esto me servira :)


  • 0