Noticias

¡RECUERDA QUE SI ERES UN NUEVO USUARIO, DEBES PRESENTARTE PARA PODER PUBLICAR MENSAJES! | TENEMOS CANAL OFICIAL DE TELEGRAM: t.me/unity3dspain

Guardar y Cargar imagen en Android

Iniciado por Rocko, Septiembre 25, 2015, 04:38:21 PM

Tema anterior - Siguiente tema
Buenas amigos, necesito su ayuda, ya me estoy rompiendo la cabeza como solucionar este problema.El asunto es el siguiente, tengo un script que busca una imagen en el celular y la incrusta en un objeto, en caso de no encontrar en el el celular lo descarga de internet y lo incrusta en el objeto, la idea es que solo descargue una sola vez de internet y las siguientes veces que use directo del celular, sin importar que se cierre la aplicacion. Bueno el script funciona perfectamente en el windows, pero cuando paso la aplicacion al celular la primera vez efectivamente busca la imagen de celular como no lo encuentra descarga de internet, pero la siguiente vez que se usa igual no encuentra la imagen guardada en el celular asi que lo vuelve a buscar de inter, trate de usar aplication.datapath pero igual es el mismo problema, favor alguien que me de alguna idea. GraciasNota: en Player Settings - Write access ya esta habilitado External (SDCard)

#pragma strict

import System.IO;

 

public static var FondoEscena : Texture2D; // La hago estática

public var url: String = "http://imagen.com/images001.png";

public var url2: String = "file://"+ Application.persistentDataPath + "/FondoEscena.png";

 

function Start () {                               var w = new WWW(url2);

                               yield w;

                               renderer.material.mainTexture = w.texture;

                               Debug.Log(w.error);

                               if (w.error != null) {

                                               print("No hay la imagen");

                                               BajarFotodeInter();                               } else {

                                               FondoEscena = w.texture;

                                               print("Imagen recuperada del celular");                               }

                }

 function BajarFotodeInter () { 

                                               var www: WWW = new WWW(url);

                                               yield www; // asignar textura                                               var renderer: Renderer = GetComponent.<Renderer>(); 

                                               FondoEscena = www.texture;                                               var bytes = FondoEscena.EncodeToPNG(); 

                                               File.WriteAllBytes(Application.persistentDataPath + "/FondoEscena.png", bytes);                                                       renderer.material.mainTexture = www.texture; 

}


Etiquetas: