Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

202
Vistas
Compartir una historia en Instagram con una imagen de fondo y una pegatina - IOS Swift

Estoy tratando de compartir una historia con una imagen de fondo y una imagen adhesiva a través del esquema de URL en mi aplicación ios, estoy usando el código adjunto y no funciona. Cuando trato de compartir solo una imagen de fondo o solo una pegatina, funciona. Pero cuando intento compartir tanto una imagen de fondo como una pegatina encima, no funciona.

¿Algunas ideas?

 func shareToInstagram(deepLinkString : String){ let url = URL(string: "instagram-stories://share")! if UIApplication.shared.canOpenURL(url){ let backgroundData = UIImageJPEGRepresentation(UIImage(named: "shop_placeholder")!, 1.0)! let creditCardImage = UIImage(named: "share_instagram")! let stickerData = UIImagePNGRepresentation(creditCardImage)! let pasteBoardItems = [ ["com.instagram.sharedSticker.backgroundImage" : backgroundData], ["com.instagram.sharedSticker.stickerImage" : stickerData], ] if #available(iOS 10.0, *) { UIPasteboard.general.setItems(pasteBoardItems, options: [.expirationDate: Date().addingTimeInterval(60 * 5)]) } else { UIPasteboard.general.items = pasteBoardItems } UIApplication.shared.openURL(url) }
over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Copié el código de OP pegado para usarlo en mi propia aplicación (solo sustituyendo diferentes UIImages) y encontré solo 1 problema, los elementos de la mesa de trabajo deben estar contenidos en una sola matriz; de lo contrario, Instagram representará solo el primer elemento (en este caso, la capa de fondo). Para solucionar esto, reemplace la declaración de elementos de cartón con el siguiente código

 let pasteBoardItems = [ ["com.instagram.sharedSticker.backgroundImage" : backgroundData, "com.instagram.sharedSticker.stickerImage" : stickerData] ]

(básicamente, simplemente quite el corchete de cierre y apertura que separa los dos elementos)

Además, como se indicó en una respuesta anterior, asegúrese de que "instagram-stories" esté incluido en LSApplicationQueriesSchemes en el archivo info.plist

Uso este código exacto en mi aplicación y ahora funciona perfecto

over 4 years ago · Santiago Trujillo Denunciar

0

Todo es correcto, mi código es similar y funciona para iOS 11+. Te sugiero lo siguiente:

  1. verifique los datos de imagen que pasa a la mesa de trabajo (jpg no se puede convertir con UIImagePNGRepresentation y viceversa)
  2. revisa la info.plist. Debe habilitar el esquema "instagram-stories" en él (clave LSApplicationQueriesSchemes )
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda