Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

300
Views
¿Cómo descargar y guardar Bitmap de webp animado?

Cuando estoy usando archivos webp para paquetes de pegatinas animadas, se rechazan, pero si uso los mismos archivos para pegatinas estáticas, se exceptúan. Después de mirar todos los códigos, me di cuenta de que este es el último punto en el que esos archivos se vuelven problemáticos. Pero no sé cómo identificar si los archivos webp permanecen como webp animados después de guardarlos. Por favor comparte tu pensamiento.

pd: estoy usando estos archivos webp para los paquetes de pegatinas de whatsapp. hay una bandera "animated_sticker_pack". tenemos que decirle a whatsapp que este paquete contiene solo webp animado con formato adecuado. Si lo configuro como falso, se agregará el paquete de pegatinas (deje que sea webp estático o animado). Pero si configuro ese indicador como verdadero, esos webp animados serán rechazados por el paquete que muestra el error de que hay un problema con este paquete... . Entonces podría ser que los marcos sean menores de lo requerido. Se acepta como estático, lo que significa que puede tener un solo cuadro. Para evitar problemas relacionados con el tipo de archivo, el formato, el tamaño y todo lo demás, estoy usando los archivos de muestra de la aplicación de muestra de WhatsApp

Código:

 public static void SaveImage(Bitmap finalBitmap, String name, String identifier) { String root = path + "/" + identifier; File myDir = new File(root); myDir.mkdirs(); String fname = name; File file = new File(myDir, fname); if (file.exists()){ file.delete(); } try { // FileOutputStream FileOutputStream out = new FileOutputStream(file); // Bitmap.compress finalBitmap.compress(Bitmap.CompressFormat.WEBP, 100, out); // close out.flush(); out.close(); } catch (Exception e) { e.printStackTrace(); } } ////////////////////Other methods before saving images private Bitmap downloadImageBitmap(String sUrl, String sIdentifier, String sName) { imageFileName = getLastBitFromUrl(sUrl).replace(".png", ".webp"); identifier = sIdentifier; name = sName; Bitmap bitmap = null; try { InputStream inputStream = new URL(sUrl).openStream(); // Download Image from URL bitmap = BitmapFactory.decodeStream(inputStream); // Decode Bitmap inputStream.close(); } catch (Exception e) { e.printStackTrace(); } return bitmap; } @Override protected Bitmap doInBackground(String... params) { return downloadImageBitmap(params[0], params[1], params[2]); } protected void onPostExecute(Bitmap result) { SaveImage(result, imageFileName, identifier); }
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Puedes descargar y guardar en doInBackground()

 InputStream inputStream = new URL(sUrl).openStream(); // Download Image from URL FileOutputStream out = new FileOutputStream(file);

Luego haga un bucle donde lea bytes en un búfer desde el flujo de entrada y escriba en el flujo de salida.

No olvide cerrar todas las transmisiones cuando haya terminado.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!