(个人)AR电子书系统创新实训第四周(1)
2017-06-01 20:24
507 查看
目前进展
上周完成了根据图片和视频的相对路径确定其位置,然后动态的生成prefab进行绑定。但是在我们的系统中,用户在后台上传完毕图片和视频后,需要通过扫描二维码在手机app上down下我们的资源,然后通过上周的方法进行动态绑定。由于扫描二维码和后台上传资源是我的另一个小伙伴去做。所以我要完成的是下载资源后解压至persistent文件夹,然后使图片和视频动态绑定起来。
本周我先试图实现下载资源并解包。
DownloadZip
private IEnumerator DownLoadZip(string url) { string name = url.Substring(url.LastIndexOf("/") + 1); FileInfo exist = new FileInfo(UnityEngine.Application.persistentDataPath + "/" + name); if (!exist.Exists) { GameObject obj = Instantiate(progressPanelsrc); obj.transform.SetParent(parentSocket, false); progress = obj.GetComponent<LoadingPanel>(); WWW www = new WWW(url); while (!www.isDone) { progress.setProgress(www.progress); yield return null; } progress.destroypanel(); if (www != null && string.IsNullOrEmpty(www.error)) { debugLog = "/" + name; File.WriteAllBytes(UnityEngine.Application.persistentDataPath + "/" + name, www.bytes); FileInfo file = new FileInfo(UnityEngine.Application.persistentDataPath + "/" + name); if(file.Exists) { debugLog = "done write"; } else { debugLog = "not done"; } deleteDir(UnityEngine.Application.persistentDataPath + "/TempFiles"); ZipUtility.UnzipFile(www.bytes, UnityEngine.Application.persistentDataPath); done = true; } } else { debugLog = "exist"; deleteDir(UnityEngine.Application.persistentDataPath + "/TempFiles"); ZipUtility.UnzipFile(UnityEngine.Application.persistentDataPath + "/" + name, UnityEngine.Application.persistentDataPath); done = true; } }
在每次下载前,我都需要去检查一次persistentAssets这个文件夹中是否有重名的zip,如果有,那么exist,不用再次下载了。
而且,在每次unzip之前,需要把原来保存在这个目录下的unzip过的文件夹删除,这样保证了同时只会有一组宣传册的资源被解压使用。
deleteDir
private void deleteDir(string dirpath) { DirectoryInfo dir = new DirectoryInfo(dirpath); if (dir.Exists) { FileInfo[] files = dir.GetFiles(); if (files != null) { for (int i = 0; i < files.Length; i++) { if (files[i] != null) { Debug.Log("删除文件:" + files[i].FullName + "__over"); files[i].Delete(); files[i] = null; } } files = null; } dir.Delete(); } }
相关文章推荐
- (个人)AR电子书创新系统实训第四周(1)
- (个人)AR电子书系统创新实训第四周(2)
- (个人)AR电子书系统创新实训第四周(2)
- (个人)AR电子书创新系统实训第四周(2)
- (个人)AR电子书系统创新实训第四周(2)
- (个人)AR电子书系统创新实训第四周(1)
- (个人)AR电子书系统创新实训第二周(1)
- (个人)AR电子书系统创新实训第二周(2)
- (个人)AR电子书系统创新实训第二周(2)
- (个人)AR电子书系统创新实训第三周(1)
- (个人)AR电子书系统创新实训第二周(1)
- (个人)AR电子书系统创新实训第一周(2)
- (项目)AR电子书系统创新实训第四周(1)
- (个人)AR电子书系统创新实训第一周(2)
- (个人)AR电子书系统创新实训第三周(2)
- (个人)AR电子书系统创新实训第三周(1)
- (个人)AR电子书系统创新实训第一周(1)
- (个人)AR电子书系统创新实训第一周(2)
- (个人)AR电子书系统创新实训第三周(1)
- (个人)AR电子书系统创新实训第二周(2)