Programmer:)

[Unity] Android 인앱 업데이트 본문

DEV/Unity

[Unity] Android 인앱 업데이트

ryeggg 2024. 4. 30. 15:49
반응형
 

인앱 업데이트  |  Android 개발자  |  Android Developers

이 페이지는 Cloud Translation API를 통해 번역되었습니다. 인앱 업데이트 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 사용자는 기기에서 앱을 최신 상태로

developer.android.com

 

앱 업데이트가 필요할 시 구글 스토어에 따로 들어가서 업데이트 받는 형식이 아닌

앱실행 -> 업데이트 체크 -> 업데이트 화면  이렇게 연결 될 수 있도록 도와준다.

 

이 기능은 Android 5.0 (API Level 21) 이상 부터 지원되면 .apk, .obb 을 사용하는 앱에서는 호환되지 않는다.

 

즉시업데이트 와 유연한 업데이트를 지원하는데 이번엔 즉시 업데이트 사용법을 정리해보려 한다.

 

1. 패키지를 다운받아 유니티에 넣어준다. (자동으로 들어갔다.)

 

Unity용 Google 패키지 살펴보기  |  Google for Developers

이 페이지는 Cloud Translation API를 통해 번역되었습니다. Unity용 Google 패키지 살펴보기 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Unity용 Google 공식 패키지

developers.google.com

 

 

2. 버전을 관리해줄 script를 만들어 아래와 같이 작성했다.

(코드 내용이 직관적이기때문에 따로 주석은 작성하지 않았다.)

using System.Collections;
using UnityEngine;
using Google.Play.AppUpdate;
using Google.Play.Common;

public class CheckAppUpdate : MonoBehaviour
{
    AppUpdateManager appUpdateManager;

    public void Start()
    {
#if PLATFORM_ANDROID && !UNITY_EDITOR
        StartCoroutine(GoogleCheckUpdate_Version());
#endif
    }

    public IEnumerator GoogleCheckUpdate_Version()
    {
        appUpdateManager = new AppUpdateManager();
        PlayAsyncOperation<AppUpdateInfo, AppUpdateErrorCode> appUpdateInfoOperation = appUpdateManager.GetAppUpdateInfo();

        yield return appUpdateInfoOperation;

        if (appUpdateInfoOperation.IsSuccessful)
        {
            AppUpdateInfo appUpdateInfoResult = appUpdateInfoOperation.GetResult();

            if(appUpdateInfoResult.UpdateAvailability ==  UpdateAvailability.UpdateAvailable)
            {
                AppUpdateOptions appUpdateOptions = AppUpdateOptions.ImmediateAppUpdateOptions();
                AppUpdateRequest startUpdateRequest = appUpdateManager.StartUpdate(appUpdateInfoResult, appUpdateOptions);
                yield return startUpdateRequest;
            }
        }
        else
        {

        }
    }

}

 

 

 

반응형
Comments