小编Jen*_*nny的帖子

Unity将图像保存到图库android/ios

我正在尝试将屏幕截图保存到设备的图库中.它工作正常,但它不会出现在画廊中.

这就是我的工作

selfie= new Texture2D(Screen.width, Screen.height, TextureFormat.RGB24, false);
selfie.ReadPixels(new Rect(0, 0,Screen.width, Screen.height), 0, 0,false);

selfie.Apply ();
byte[] bytes = selfie.EncodeToPNG();
string filename = "Screenshot.png";

fileLocation = Path.Combine( Application.persistentDataPath, filename );
File.WriteAllBytes(fileLocation, bytes );

string myFolderLocation = "/mnt/sdcard/DCIM/Camera/";
myScreenshotLocation = myFolderLocation + filename;

System.IO.File.Move(fileLocation, myScreenshotLocation);
Run Code Online (Sandbox Code Playgroud)

它将图像保存在正确的位置.如果我在SD卡上查找,它就在那里.但是在画廊里却没有露面.所以我在File.move之后尝试了这个,刷新了库.

//REFRESHING THE ANDROID PHONE PHOTO GALLERY IS BEGUN
    AndroidJavaClass classPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
    AndroidJavaObject objActivity = classPlayer.GetStatic<AndroidJavaObject>("currentActivity");        
    AndroidJavaClass classUri = new AndroidJavaClass("android.net.Uri");        
    AndroidJavaObject objIntent = new AndroidJavaObject("android.content.Intent", new object[2]{"android.intent.action.MEDIA_MOUNTED", classUri.CallStatic<AndroidJavaObject>("parse", "file://" + myScreenshotLocation)});        
    objActivity.Call ("sendBroadcast", …
Run Code Online (Sandbox Code Playgroud)

android screenshot gallery unity-game-engine ios

5
推荐指数
1
解决办法
9381
查看次数

标签 统计

android ×1

gallery ×1

ios ×1

screenshot ×1

unity-game-engine ×1