Unity3D - AssetBundle 在Android机子上进行读取

我看到官方文档中说明:
Note that bundles are not fully compatible between platforms. A bundle built for any of the standalone platforms (including webplayer) can be loaded on any of those platforms but not on iOS or Android. Furthermore, a bundle built for iOS is not compatible with Android and vice versa.

但是我们看到,用以下步骤进行在Android机子上使用AssetBundle

重点有2点:

  1. Use the option "BuildTarget.Android".
  2. Describe the path with triple slash "file:///"

以下是步骤:

  1. Delete directories "Per Texture Materials", "assetbundles", and so on.  把已经导出过的包删掉
  2. Use the option "BuildTarget.Android" to all "BuildPipeline.BuildAssetBundle".   要把BuildTarget为Android平台!!!
  3. Run these on Editor. Character Generator/Generate Materials Character Generator/Create Assetbundles Character Generator/Update Character Element Database  
  4. Copy Assetbundles database to Android device which like "/mnt/sdcard/assetbundles/"  把这些包放到Android的指定目录下
  5. Modify AssetbundleBaseURL. (the point was "file:///") 修改获取AssetbundleBaseURL基础路径的地址
public static string AssetbundleBaseURL
{
    get
    {
        if (Application.platform == RuntimePlatform.WindowsWebPlayer || Application.platform == RuntimePlatform.OSXWebPlayer)
        {
            return Application.dataPath + "/assetbundles/";
        }
        else if (Application.platform == RuntimePlatform.Android)
        {
            return "file:///mnt/sdcard/assetbundles/";
        }
        else
        {
            return "file://" + Application.dataPath + "/../assetbundles/";
        }
    }
}


你可能感兴趣的:(Unity3D基础)