View in English

  • Apple Developer
    • 시작하기

    시작하기 탐색

    • 개요
    • 알아보기
    • Apple Developer Program

    알림 받기

    • 최신 뉴스
    • Hello Developer
    • 플랫폼

    플랫폼 탐색

    • Apple 플랫폼
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store

    피처링

    • 디자인
    • 배포
    • 게임
    • 액세서리
    • 웹
    • 홈
    • CarPlay
    • 기술

    기술 탐색

    • 개요
    • Xcode
    • Swift
    • SwiftUI

    피처링

    • 손쉬운 사용
    • 앱 인텐트
    • Apple Intelligence
    • 게임
    • 머신 러닝 및 AI
    • 보안
    • Xcode Cloud
    • 커뮤니티

    커뮤니티 탐색

    • 개요
    • Apple과의 만남 이벤트
    • 커뮤니티 주도 이벤트
    • 개발자 포럼
    • 오픈 소스

    피처링

    • WWDC
    • Swift Student Challenge
    • 개발자 이야기
    • App Store 어워드
    • Apple 디자인 어워드
    • 문서

    문서 탐색

    • 문서 라이브러리
    • 기술 개요
    • 샘플 코드
    • 휴먼 인터페이스 가이드라인
    • 비디오

    릴리즈 노트

    • 피처링 업데이트
    • iOS
    • iPadOS
    • macOS
    • watchOS
    • visionOS
    • tvOS
    • Xcode
    • 다운로드

    다운로드 탐색

    • 모든 다운로드
    • 운영 체제
    • 애플리케이션
    • 디자인 리소스

    피처링

    • Xcode
    • TestFlight
    • 서체
    • SF Symbols
    • Icon Composer
    • 지원

    지원 탐색

    • 개요
    • 도움말
    • 개발자 포럼
    • 피드백 지원
    • 문의하기

    피처링

    • 계정 도움말
    • 앱 심사 지침
    • App Store Connect 도움말
    • 새로 추가될 요구 사항
    • 계약 및 지침
    • 시스템 상태
  • 빠른 링크

    • 이벤트
    • 뉴스
    • 포럼
    • 샘플 코드
    • 비디오
 

비디오

메뉴 열기 메뉴 닫기
  • 컬렉션
  • 전체 비디오
  • 소개

더 많은 비디오

  • 소개
  • 요약
  • 코드
  • StoreKit과 백그라운드 애셋으로 게임 내 콘텐츠 활용하기

    Steam Asset Converter와 앱 내 구입을 지원할 수 있는 새로운 Unity 플러그인을 사용하여 크로스 플랫폼 개발을 간소화하세요. 필요한 것만 제공할 수 있는 언어별 애셋 팩으로 게임을 더 가볍게 만들고 멋진 플레이어 경험을 선사하는 방법을 알아보세요.

    챕터

    • 0:01 - Introduction
    • 0:33 - Background Assets
    • 1:35 - Localized asset packs
    • 3:14 - Convert Steam depots to asset packs
    • 4:15 - Unity plug-ins
    • 5:52 - StoreKit and Background Assets sample code
    • 8:25 - Game presence
    • 9:10 - Next steps

    리소스

    • Apple Unity Plug-Ins on GitHub
    • Background Assets
    • StoreKit
      • HD 비디오
      • SD 비디오

    관련 비디오

    WWDC26

    • App Store에서 앱 노출 향상하기

    WWDC25

    • Apple-Hosted Background Assets 알아보기

    Meet with Apple

    • Chart your game's course to Apple platforms

    WWDC22

    • 플러그인 및 플레이: Unity 게임 프로젝트에 Apple 프레임워크 추가
  • 비디오 검색…
    • 3:06 - Asset pack manifest for a localized asset pack

      // Asset pack manifest
      
      {
         "assetPackID": "voice-english",
         "downloadPolicy": { /* … */ },
         "language": "en-US",
         "sourceRoot": ".",
         "fileSelectors": [ /* … */ ],
         "platforms": [ /* … */ ]
          //… 
      }
    • 3:27 - Convert a Steam depot to an asset pack manifest

      # Convert a Steam depot to an asset pack manifest
      xcrun ba-package convert --asset-pack-id voice-english --l en-US --on-demand voice-english.vdf -o voice-english.json
    • 3:28 - Convert an asset pack manifest to an asset pack archive

      # Convert an asset pack manifest to an asset pack archive
      xcrun ba-package voice-english.json -o voice-english.aar
    • 5:52 - Fetch and purchase products with the StoreKit plug-in

      // Fetch and purchase products with the StoreKit plug-in
      
      using UnityEngine;
      using Apple.StoreKit;
      
      async void Start() {
          var products = await Product.FetchProducts(new[] {
                  "com.thecoast.capecod"
          });
      }
    • 6:01 - Fetch and purchase products with the StoreKit plug-in

      // Fetch and purchase products with the StoreKit plug-in
      
      using UnityEngine;
      using Apple.StoreKit;
      
      async void Purchase(Product product) {
          var result = await product.Purchase();
          if (result.Result == PurchaseResult.ResultEnum.Success
              && result.TransactionVerification.IsVerified)
          {
              // Unlock access to purchased content
      
              result.TransactionVerification.SafePayload.Finish();
          }
      }
    • 6:23 - Listen for Transaction updates with the StoreKit plug-in

      // Listen for Transaction updates with the StoreKit plug-in
      
      using UnityEngine;
      using Apple.StoreKit;
      
      public static class TransactionListener {
          public static void Initialize() => Transaction.Updates += OnUpdate;
      
      
          async void OnUpdate(VerificationResult<Transaction> result) {
              if (!result.IsVerified) return;
              var verifiedTransaction = result.SafePayload;
      
              // Consumables are not in CurrentEntitlements, so handle them inline
              if (verifiedTransaction.ProductType == ProductType.ProductTypeEnum.Consumable) {
                  if (verifiedTransaction.RevocationDate != null) {
                      // Revoke the consumable identified by verifiedTransaction.ProductId
                  } else {
                      // Grant access to the consumable
                  }
              }else {
                  // Non-consumables and subscriptions: re-read CurrentEntitlements as source of truth
                  await foreach (var verificationResult in Transaction.GetCurrentEntitlements()) {
                      if (!verificationResult.IsVerified) continue;
                      // Grant access to the product
                  }
              }
              verifiedTransaction.Finish();
          }
      }
    • 7:13 - Download asset packs with the Background Assets plug-in

      // Download asset packs with the Background Assets plug-in
      
      using Apple.BackgroundAssets;
      using UnityEngine;
      
      async void LoadTutorial(string language) {
          try {
              string assetPackId = $"tutorial-{language}";
              AssetPackManifest manifest = await AssetPackManager.GetManifestAsync();
              AssetPack assetPack = manifest.GetAssetPack(assetPackId);
              CancellationTokenSource tokenSource = new CancellationTokenSource();
              _ = Task.Run(async () => {
                  await foreach (AssetPackManager.DownloadStatusUpdate statusUpdate in AssetPackManager.DownloadStatusUpdatesAsync(assetPackId)) { 
                  		// Update download progress in UI
                  }
              }, tokenSource.Token);
              await AssetPackManager.EnsureLocalAvailabilityOfAssetPackAsync(assetPack);
              tokenSource.Cancel();
              // Start tutorial with the locally available assets
          } catch (Exception exception) {
              // Handle the exception
          }
      }
    • 0:01 - Introduction
    • New tools for building games on Apple platforms: updates to Background Assets, new Unity plug-ins for In-App Purchase, and ways to enhance your presence on the App Store and Apple Games app.

    • 0:33 - Background Assets
    • Apple-Hosted Managed Background Assets save players time and storage by downloading asset packs only when needed. Now with Apple-hosting, up to 200 GB per app is included in the Developer Program.

    • 1:35 - Localized asset packs
    • Localized asset packs greatly reduce the size of assets that players need to download by allowing the system to identify the player’s preferred language selected in Settings and only deliver assets for your game in that language.

    • 3:14 - Convert Steam depots to asset packs
    • Learn how to bring your Steam depots into asset pack manifests and asset pack archives to ship along with your game on Apple platforms.

    • 4:15 - Unity plug-ins
    • Two new Apple Unity plug-ins: Background Assets and StoreKit expose C# APIs that bridge to the native frameworks. Build and test with Xcode 27, Python 3, and Unity 2022 LTS or later.

    • 5:52 - StoreKit and Background Assets sample code
    • Examples of how to use the C# version of the native StoreKit and Background Assets APIs in your game.

    • 8:25 - Game presence
    • Make your game stand out with new visuals for your product page header and search results.

    • 9:10 - Next steps
    • Ways to go further — upload localized asset packs in App Store Connect to reduce app size, adopt new Unity plug-ins, and highlight features with new image and video assets in the App Store and Apple Games app.

Developer Footer

  • 비디오
  • WWDC26
  • StoreKit과 백그라운드 애셋으로 게임 내 콘텐츠 활용하기
  • 메뉴 열기 메뉴 닫기
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    메뉴 열기 메뉴 닫기
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • SF Symbols
    메뉴 열기 메뉴 닫기
    • 손쉬운 사용
    • 액세서리
    • Apple Intelligence
    • 앱 확장 프로그램
    • App Store
    • 오디오 및 비디오(영문)
    • 증강 현실
    • 디자인
    • 배포
    • 교육
    • 서체(영문)
    • 게임
    • 건강 및 피트니스
    • 앱 내 구입
    • 현지화
    • 지도 및 위치
    • 머신 러닝 및 AI
    • 오픈 소스(영문)
    • 보안
    • Safari 및 웹(영문)
    메뉴 열기 메뉴 닫기
    • 문서(영문)
    • 튜토리얼
    • 다운로드
    • 포럼(영문)
    • 비디오
    메뉴 열기 메뉴 닫기
    • 지원 문서
    • 문의하기
    • 버그 보고
    • 시스템 상태(영문)
    메뉴 열기 메뉴 닫기
    • Apple Developer
    • App Store Connect
    • 인증서, 식별자 및 프로파일(영문)
    • 피드백 지원
    메뉴 열기 메뉴 닫기
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program(영문)
    • Mini Apps Partner Program
    • News Partner Program(영문)
    • Video Partner Program(영문)
    • Security Bounty Program(영문)
    • Security Research Device Program(영문)
    메뉴 열기 메뉴 닫기
    • Apple과의 만남
    • Apple Developer Center
    • App Store 어워드(영문)
    • Apple 디자인 어워드
    • Apple Developer Academy(영문)
    • WWDC
    최신 뉴스 읽기.
    Apple Developer 앱 받기.
    Copyright © 2026 Apple Inc. 모든 권리 보유.
    약관 개인정보 처리방침 계약 및 지침