有很多人问我这个问题,我浏览了谷歌搜索结果的前几页,尝试了我找到的每一个解决方案——似乎都没用。
似乎是因为不同的版本改变了…
我从Unity Asset Store购买了一项资产,但该资产本身也不会这样做。(我已经联系了资产创建者,但还没有听到任何关于这方面的消息)。
所以…当前刷新库的方法是什么?最新版本的android有哪些功能?
最佳答案
好吧,那么在更多的挠头之后,我找到了一个解决办法。
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上测试过了,效果很好!