Skip to content
이 내용이 도움이 되었나요?

미디어

앨범 사진 조회, 카메라 촬영, 파일 저장 등 미디어 관련 API예요. 앨범(photos)과 카메라(camera) 기능은 권한이 필요해요.


API

API반환 타입설명
AIT.FetchAlbumPhotos()ImageResponse[]앨범에서 사진을 가져와요
AIT.OpenCamera()ImageResponse카메라를 열어 사진을 촬영해요
AIT.SaveBase64Data()voidBase64 데이터를 파일로 저장해요

FetchAlbumPhotos

사용자의 앨범에서 사진을 선택해 가져와요. 앨범 접근 권한이 필요해요.

csharp
try
{
    var photos = await AIT.FetchAlbumPhotos(new FetchAlbumPhotosOptions
    {
        // 조회 옵션
    });
    Debug.Log($"선택한 사진 수: {photos.Length}");
}
catch (AITException ex)
{
    Debug.LogError($"앨범 사진 조회 실패: {ex.Message}");
}

OpenCamera

카메라를 열어 사진을 촬영해요. 카메라 접근 권한이 필요해요.

csharp
try
{
    var photo = await AIT.OpenCamera(new OpenCameraOptions
    {
        // 카메라 옵션
    });
    Debug.Log($"촬영 완료: {photo}");
}
catch (AITException ex)
{
    Debug.LogError($"카메라 실패: {ex.Message}");
}

SaveBase64Data

Base64로 인코딩된 데이터를 파일로 저장해요. 스크린샷 저장 등에 활용할 수 있어요.

csharp
try
{
    await AIT.SaveBase64Data(new SaveBase64DataParams
    {
        // 저장할 Base64 데이터와 파일 정보
    });
    Debug.Log("파일 저장 완료");
}
catch (AITException ex)
{
    Debug.LogError($"파일 저장 실패: {ex.Message}");
}

사용 예제

스크린샷을 촬영해서 저장하는 예제예요.

csharp
using AppsInToss;
using UnityEngine;
using System;

public class MediaExample : MonoBehaviour
{
    public async void CaptureAndSave()
    {
        try
        {
            // 스크린샷 캡처
            yield return new WaitForEndOfFrame();
            var texture = ScreenCapture.CaptureScreenshotAsTexture();
            byte[] pngData = texture.EncodeToPNG();
            string base64 = Convert.ToBase64String(pngData);

            // 파일로 저장
            await AIT.SaveBase64Data(new SaveBase64DataParams
            {
                // Base64 데이터와 파일 정보 설정
            });
            Debug.Log("스크린샷 저장 완료");
        }
        catch (AITException ex)
        {
            Debug.LogError($"스크린샷 저장 실패: {ex.Message}");
        }
    }
}

TIP

  • FetchAlbumPhotosOpenCamera는 각각 앨범, 카메라 접근 권한이 필요해요. 권한을 참고해 주세요.
  • FetchAlbumPhotosOpenCameraoptions 파라미터는 선택이에요.