如何使用Unity刷新Android库?

时间:2016-06-30 22:31:00

标签: c# android unity3d gallery

很多人都在问这个问题,而且我已经浏览了谷歌搜索结果的前几页,并尝试了我找到的所有解决方案 - 似乎都没有。

似乎是因为不同版本的事情发生了变化......

我从Unity Asset商店购买了一项资产,但资产本身也没有这样做。 (我已经联系了资产创建者,但还没有听到任何有关此事的消息)。

那么......目前刷新画廊的方式是什么?什么在最新版本的Android中有效?

1 个答案:

答案 0 :(得分:3)

好的,所以在经过多次努力之后,我找到了一个解决方案。

        using (AndroidJavaClass jcUnityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
        using (AndroidJavaObject joActivity = jcUnityPlayer.GetStatic<AndroidJavaObject>("currentActivity"))
        using (AndroidJavaObject joContext = joActivity.Call<AndroidJavaObject>("getApplicationContext"))
        using (AndroidJavaClass jcMediaScannerConnection = new AndroidJavaClass("android.media.MediaScannerConnection"))
        using (AndroidJavaClass jcEnvironment = new AndroidJavaClass("android.os.Environment"))
        using (AndroidJavaObject joExDir = jcEnvironment.CallStatic<AndroidJavaObject>("getExternalStorageDirectory"))
        {
            jcMediaScannerConnection.CallStatic("scanFile", joContext, new string[] { Path }, null, null);
        }

路径应该等于图像的绝对路径。根据需要在字符串[]中插入更多路径。已经在Android 6.0.1上测试了这个并且效果很好!