文章参考至:http://blog.csdn.net/wf_unity/article/details/22087643
C# 脚本
进行截图
Invoke ("ShowSaveObj", 0.5f);
showSaveObj<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">是项目中的方法 可以删掉</span>
filename = Application.persistentDataPath + "/Screenshot.png";
Texture2D screenShot = new Texture2D (Screen.width, Screen.height, TextureFormat.RGB24, false); //screenShot.ReadPixels(rect, 0, 0); screenShot.ReadPixels (new Rect (0, 0, Screen.width, Screen.height), 0, 0); // 然后将这些纹理数据,成一个png图片文件 byte[] bytes = screenShot.EncodeToJPG (); screenShot.Compress (true); screenShot.Apply (); //string destination = "/sdcard/DCIM/Camera"; //string filename = Application.persistentDataPath + "/icon.png"; //string filename = destination + "/icon.png"; System.IO.File.WriteAllBytes (filename, bytes); Debug.Log (string.Format ("截屏了一张图片: {0}", filename)); Invoke ("ShowSaveObj", 0.5f); #if UNITY_IPHONE _SavePhoto (filename); #endif
下面需要在xcode 创建.h和.m文件
目录是Plugins下的ios
.h
// // ViewController.h // IOSItem // // Created by ldy on 16/8/12. // Copyright © 2016年 ldy. All rights reserved. // #import <UIKit/UIKit.h> @interface LdyController : NSObject - ( void ) imageSaved: ( UIImage *) image didFinishSavingWithError:( NSError *)error contextInfo: ( void *) contextInfo; @end.m
// // ViewController.m // IOSItem // // Created by ldy on 16/8/12. // Copyright © 2016年 ldy. All rights reserved. // #import "LdyController.h" @interface LdyController () @end @implementation LdyController - ( void ) imageSaved: ( UIImage *) image didFinishSavingWithError:( NSError *)error contextInfo: ( void *) contextInfo { NSLog(@"保存结束"); if (error != nil) { NSLog(@"有错误"); } } void _SavePhoto(char *readAddr) { NSString *strReadAddr = [NSString stringWithUTF8String:readAddr]; UIImage *img = [UIImage imageWithContentsOfFile:strReadAddr]; LdyController *instance = [LdyController alloc]; UIImageWriteToSavedPhotosAlbum(img, instance,@selector(imageSaved:didFinishSavingWithError:contextInfo:), nil); } @end