Duvida, obter caminho do takephotofromlibraryaction.

Android

Delphi

FireMonkey

07/02/2019

Ola.
Minha duvida é a seguinte, eu utilizei o Takephotofromlibraryaction para selecionar na bblioteca uma imagem, e coloca-la em um Timage, gostaria de copiar o seu caminho e ter a possibilidade de mover a imagem da pasta.
Uso o comando abaixo para selecionar e mandar para o Timage, mas não sei como obter o endereço de tal e o poder de copiar ou mover para outra pasta.

procedure Testoq.TakePhotoFromLibraryAction1DidFinishTaking(Image: TBitmap);
begin
img_novo.Bitmap.Assign(Image);
end;

Alguem pode me ajudar?
Fernando

Fernando

Curtidas 0

Respostas

Hélio Devmedia

Hélio Devmedia

07/02/2019

Olá Fernando,

Olhando por auto a sua dúvida, acredito que a classe TPath resolva seu problema para saber a pasta das fotos. basta declarar na Uses System.IOUtils.

o TPath pega o caminho do dispositivo para várias finalidades por exemplo TPath.GetCameraPath retorna o caminho das imagens da camera e o TPath.GetMusicPath o caminho padrão das audios. Essa classe tem dezenas de caminhos que ela pode pegar já pré implementados para evitar que você tenha que saber o caminho físico de cada sistema operacional...

no caso de mover o arquivo acredito também que o TFile resolva já que ele tem o método TFile.Move(caminhoOrigem,CaminhoDestino);

é importante você verificar as questões de permissão, o android na ultima versão exige segurança mais estrita para manipular arquivos, assim sugiro que assista alguns vídeos oficiais da embarcadero que abordam as permissões no android com o Delphi.

Espero ter ajudado, um forte abraço e fique com Deus.
GOSTEI 0
Fernando

Fernando

07/02/2019

Olá Fernando,

Olhando por auto a sua dúvida, acredito que a classe TPath resolva seu problema para saber a pasta das fotos. basta declarar na Uses System.IOUtils.

o TPath pega o caminho do dispositivo para várias finalidades por exemplo TPath.GetCameraPath retorna o caminho das imagens da camera e o TPath.GetMusicPath o caminho padrão das audios. Essa classe tem dezenas de caminhos que ela pode pegar já pré implementados para evitar que você tenha que saber o caminho físico de cada sistema operacional...

no caso de mover o arquivo acredito também que o TFile resolva já que ele tem o método TFile.Move(caminhoOrigem,CaminhoDestino);

é importante você verificar as questões de permissão, o android na ultima versão exige segurança mais estrita para manipular arquivos, assim sugiro que assista alguns vídeos oficiais da embarcadero que abordam as permissões no android com o Delphi.

Espero ter ajudado, um forte abraço e fique com Deus.


Ajuda sim, desculpa pela demora...
você tem algum exemplo de uso?
GOSTEI 0
Hélio Devmedia

Hélio Devmedia

07/02/2019

No momento não tenho mas crie uma aplicação firemonkey, declare na uses o System.IOUtils e coloque um botão e tente escrever showmessage(TPath.GetCameraPath); e veja o caminho que é mostrado na tela de mensagem...

Depois clique entre o Get e o Camera e aperte Ctrl+Espaço e veja as inúmeras opções que surgem.... esses caminhos você pode colocar junto com o nome da imagem para pegar o caminho completo da imagem... depois use o comando move para mover para outro caminho...
GOSTEI 0
POSTAR