Unity对应各平台的路径配置,跟别人不一样的写法

原创 2016年06月01日 20:34:39

    /// <summary>
    /// 根据平台和加载位置,返回资源的完整加载路径
    /// </summary>
    /// <returns>完整路径.</returns>
    /// <param name="name">文件名</param>
    /// <param name="path">资源的加载位置</param>
    public static string GetLocalURL( string name = "", PathType path = PathType.persistent)
    {
        string URL = "";

        string typePath = "";
        try
        {
            if (path == PathType.persistent)
            {
                typePath = Application.persistentDataPath;
            }
            else
            {
                typePath = Application.streamingAssetsPath;
            }
        }
        catch (Exception e)
        {
            Debug.LogError(e.ToString());
        }

#if UNITY_STANDALONE_WIN || UNITY_EDITOR
        
        	    URL = "file://" + typePath + "/" + name;

#elif UNITY_ANDROID
		
			URL = typePath + "/"+name; 
		
#elif UNITY_IOS
		
			URL = "file://"+ typePath + "/"+name; 
		
#endif

        if (!File.Exists(URL))
        {
            if (path == PathType.persistent)
            {
                return GetLocalURL(name, PathType.streaming);
            }
            else
            {
                Debug.Log("资源文件不存在:"+name);
            }
        }
        
        return URL;
    }



这是我自己用的一个获取资源路径的方法,跟网上能查到的有些不一样,如果按照其他人的写法不能实现,可以尝试下我这个。

反正我当时是按照官网上的写法写的,安卓上一直有问题...


------------------------------------------------------------------ 2016年6月23日补充--------------------------------------------------------------------


最近一直在做资源更新,整天跟文件打交道,之前的理解一直是稀里糊涂的。后来总结出以下的几点


1,application.streamingAssetes获取的路径是已经带了file:/或者jar:file:/协议的,application.persistentPath获取到的路径是不带协议的


2,streamingAssetes在android和ios上是只读的,并且不能用File操作


3,File操作的路径是不需要带文件协议的


因为这几个没搞清楚,所以本来一两天就能搞完的东西,硬是浪费了一周时间。







欢迎转载。转载请注明:
Hello光头原创
如有建议或意见,欢迎留言。
也欢迎大家加我qq,一起学习进步:1009570451



版权声明:Hello光头原创,欢迎交流拍砖扔鸡蛋,qq:1009570451 举报

相关文章推荐

Unity中的Path对应各平台中的Path

相信大家在开发过程中,难免会保存一些文件在客户端进行本地化操作。 如:配置文件,状态文件,Assetbundle文件等等... 最近总有人问我: 1.保存了一个xml在客户端,能读取里面的数...

Unity中的Path对应各平台中的Path

OS: Application.dataPath :                    Application/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/xxx....

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

Unity中的Path对应各平台中的Path

转载自: 最近使用unity读取各个平台路径,特别对移动平台路径的处理 简直是各种蛋疼 各种坑 在此与大家分享下 IOS: Application.dataPath : Applicatio...

Unity中的dataPath,streamingAssetsPath,persistentDataPath,temporaryCachePath在不同平台下的路径

dataPath : 返回程序的数据文件所在的文件夹的路径(只读)。返回路径为相对路径,一般是相对于程序安装目录的位置。不同游戏平台的数据文件保存路径不同。 StreamingAssetsPath: ...

unity 在移动平台中,文件操作路径详解

转载于http://www.unitymanual.com/thread-23491-1-1.html 一.在项目根目录中创建Resources文件夹来保存文件。 可以使用Resources.Lo...

Unity下安卓,Ios,PC平台下的路径读取

Application.Platfrom==RuntimePlatfrom.Android windows 下 StreamingAssets 读取路径 "file///"+Application...

unity 在移动平台中,文件操作路径详解

本文转自:http://www.unitymanual.com/thread-23491-1-1.html 今天,这篇文章其实是个老生常谈的问题咯,在网上类似的文章也比比皆是,在此我只是做个详细...

Unity在移动平台中的文件操作路径详解

转载自: 今天,这篇文章其实是个老生常谈的问题咯,在网上类似的文章也比比皆是,在此我只是做个详细总结方便大家能够更好、更快的掌握,当然,如有不足的地方 欢迎指正!!! 相信大家在开...

Unity中的dataPath,streamingAssetsPath,persistentDataPath,temporaryCachePath在不同平台下的路径

dataPath :返回程序的数据文件所在的文件夹的路径(只读)。返回路径为相对路径,一般是相对于程序安装目录的位置。不同游戏平台的数据文件保存路径不同。 StreamingAssetsPath...

unity 在移动平台中,文件操作路径详解

相信大家在开发过程中,难免会保存一些文件在客户端进行本地化操作。 如:配置文件,状态文件,Assetbundle文件等等... 最近总有人问我: 1.保存了一个xml在客户端,能读取里面的数...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)