Игра Unity падает на IOS, но отлично работает на Android - PullRequest
0 голосов
/ 15 января 2019

Я создал приложение, которое делает снимки экрана и сохраняет его в галерее с именем, которое я дал, используя класс DateTime и мой собственный префикс. Код на Android работает отлично, когда вы нажимаете кнопку, он делает снимок экрана и завершает все. Но история не то же самое на iOS. Сбой при каждом нажатии кнопки. Это код:

Flash.SetActive(true); 

RenderTexture rt = new RenderTexture(resWidth, resHeight,   24);          
cam.targetTexture = rt;  

Texture2D screenShot = new Texture2D(resWidth, resHeight, TextureFormat.RGB24, false);  

cam.Render();  

RenderTexture.active = rt;  
screenShot.ReadPixels(new Rect(0, 0, resWidth, resHeight), 0, 0);  
cam.targetTexture = null;  
RenderTexture.active = null;  
Destroy(rt); 

byte[] bytes = screenShot.EncodeToPNG();

filename = ScreenShotName(resWidth, resHeight);  
FullSharePath = "/storage/emulated/0/GarderobaShots/" + filename + ".png";  

Texture2D textu = new Texture2D(900,1320, TextureFormat.RGBAFloat, false);  
textu.LoadImage(bytes);  
textu.Apply();  

spr = Sprite.Create(textu ,new Rect(0.0f, 0.0f, textu.width, textu.height), new Vector2(1f, 1f), 100.0f);  
ShareAbleObject.transform.GetChild(1).gameObject.GetComponent<Image> ().sprite = spr;  

ShareAbleObject.SetActive(true);  
NativeGallery.SaveImageToGallery(textu, "AmazingGirlsShots", filename + ".png");  
takeHiResShot = false;

Просто краткое введение в код. Он переключает MainCamera сцены с какой-то камеры, которая у меня есть (она меньше и имеет другой холст (только текст)), затем активирует объект, который я назвал Flash, который является белой вспышкой на экране, он идет сам по себе после этого он рендерит текстуру с экрана и сохраняет ее в

Texture2D textu

Полный путь к файлу - это путь, в котором этот файл будет храниться, поэтому пользователь хочет, чтобы он мог поделиться им или увидеть его из игры

NativeGallery.SaveImageToGallery(textu, "AmazingGirlsShots", filename".png");

Это плагин, который я взял для ios и android, который обновляет галерею для изображения, которое будет отображаться в галерее, в противном случае его просто где-то в телефоне, я думаю, что не может быть проблемой, так как его проверочный плагин, который используют многие люди.

1 Ответ

0 голосов
/ 15 января 2019

Обязательно установите Настройки конфиденциальности разрешения в Info.plist .

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...