【发布时间】:2018-06-19 15:05:23
【问题描述】:
我正在尝试从内部存储中读取资产包。这有效:
void Start()
{
var myLoadedAssetBundle = AssetBundle.LoadFromFile(Application.persistentDataPath + "/AssetBundles/model_objs");
if (myLoadedAssetBundle == null)
{
Debug.Log("Failed to load AssetBundle!");
return;
}
GameObject wheel = (GameObject)myLoadedAssetBundle.LoadAsset("01_obj");
Instantiate(wheel);
}
但是,当我尝试将其重定向到 root 时,如下所示:
void Start()
{
var myLoadedAssetBundle = AssetBundle.LoadFromFile("/storage/emulated/0/AssetBundles/model_objs");
if (myLoadedAssetBundle == null)
{
Debug.Log("Failed to load AssetBundle!");
return;
}
GameObject wheel = (GameObject)myLoadedAssetBundle.LoadAsset("01_obj");
Instantiate(wheel);
}
我在 logcat 上收到 Unable to open archive file: /storage/emulated/0/AssetBundles/model_objs
捆绑包完全相同,位于两个位置
【问题讨论】:
-
您是否在清单中声明了
READ_EXTERNAL_STORAGE?见developer.android.com/reference/android/… 和docs.unity3d.com/Manual/android-manifest.html -
你不需要弄乱清单。从“播放器设置”中执行此操作
标签: android unity3d assetbundle