Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

442
Visualizações
Condensador iónico: captura de pantalla de la galería (iOS)

No he podido encontrar ninguna solución a esto.

Estoy usando Ionic Framework 5+ y usando Capacitor 3+.

Necesito poder hacer que el usuario tome una captura de pantalla en iOS y Android y que esa captura de pantalla se guarde automáticamente en la galería de fotos de los usuarios. Android funciona bien con el siguiente código. iOS también funciona, sin embargo, guarda el archivo en un directorio temporal, por lo que debo mover el archivo a cualquier directorio al que deba ir en iOS para que el usuario pueda verlo en su galería de fotos.

 import { Screenshot } from '@ionic-native/screenshot/ngx'; this.screenshot.save('jpg', 80).then((res) => { this.filePath = res.filePath; console.log(this.filePath); });

¿Hay alguna manera de usar la API de FileSystem Capacitor para guardar esta foto en this.filePath en la galería de iOS?

¿Hay otra forma de pasar de la captura de pantalla a la galería en iOS?

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

En iOS, la galería es algo externo a su aplicación y no se puede acceder a través del complemento del sistema de archivos porque no hay una ruta (e incluso si la hubiera, las aplicaciones de iOS están en un espacio aislado, no puede acceder a otras aplicaciones, solo a su aplicación) contenido)

Puede guardar una UIImage nativa en la galería con este código nativo:

UIImageWriteToSavedPhotosAlbum(yourImage, nil, nil, nil) pero tiene una ruta nativa, no una UIImage, por lo que primero tendrá que convertir la ruta a UIImage, con algo como let yourImage = UIImage.init(contentsOfFile: imagePath) . Entonces, con ese código puedes crear un complemento que envíe la ruta y guarde la imagen en la galería.

También puede buscar complementos que ya lo hagan. Existe este que guarda una cadena base64 que representa una imagen en la galería https://ionicframework.com/docs/native/base64-to-gallery

También hay capacitor-community/media que tiene una función savePhoto, que toma una ruta y guarda la foto en la galería.

https://github.com/capacitor-community/media#api

over 4 years ago · Santiago Trujillo Relatório

0

Esto funciona para iOS. Lo estoy usando en producción en este momento. El problema fundamental tenía que ver con el hecho de que la biblioteca Capacitor Community Media no estaba muy bien documentada para especificar el formato exacto necesario para que funcionara. Esta es la versión de trabajo del package.json de la biblioteca: "@capacitor-community/media": "github:dragermrb/media" .

 this.screenshot.save().then(async (res) => { const savePhotoResult = await Media.savePhoto({ path: `file://${res.filePath}`, album: this.album.identifier }); });
over 4 years ago · Santiago Trujillo Relatório

0

Como haces la instalación de @ionic-native/screenshot/ngx y el plugin como tal, si usas capacitor, estoy un poco perdido con eso

about 4 years ago · Daniel Acosta Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda