This guide describes the process of establishing the digital records and relationships necessary for a Unity game to interact with an In-App Purchase Store. The Unity IAP purchasing API is targeted.
Esta guía describe el proceso de establecer unos registros digitales y relaciones necesarias para que un juego de Unity interactúe con una tienda de compras dentro de la aplicación. La API de compra Unity IAP está dirigida. Una In-App Purchase (IAP) es el proceso de realizar transacciones de dinero de bienes digitales. La tienda de una plataforma permite la compra de un producto representando un bien digital. Este producto tiene un identificador que es típicamente un tipo de dato string. Los productos tienen tipos para representar su durabilidad: subscription (subscripción), consumable (consumible) (capacidad de se re-comprado), y non-consumable (no consumible) (capacidad de ser comprado solo una vez) son comunes.
Escriba un juego implementando Unity IAP. Ver inicialización de Unity IAP e Integrando Unity IAP con su juego.
Mantenga los identificadores de los productos del juego a mano para su uso en iTunes Connect después.
En el Apple Developer Center, navegue a la sección de identificadores apropiada.
Agregue un nuevo App ID, creando una entidad fundamental de la aplicación con Apple.
NOTE: Use an Explicit App ID. Wildcard App IDs (com.example.*) cannot be used for applications that use In-App Purchases.
NOTE: The App ID will be available to use in iTunes Connect after you create it in the Developer Center.
Navegue a iTunes Connect y cree una App, estableciendo una relación de la tienda con su juego.
Utilice el nuevo App ID creado para el Bundle ID de la app.
Escoja características para su nueva app, y luego agregue un nuevo In-App Purchase con el botón de más (“+”).
Escoja un Product Type (tipo de producto).
Especifique el Product Identifier (Identificador del producto), y complete otros campos como es solicitado.
NOTE: The “Product ID” here is the same identifier used in the game source code, added to the Unity IAP ConfigurationBuilder instance via AddProduct() or AddProducts().
NOTE: When targeting multiple Apple device groups (for example, shipping on both iOS and Mac) Apple requires usage of different, unique product identifiers for each distinct device group. Use Unity IAP’s Purchasing.IDs class and define a one-to-many mapping Product IDs to the store-specific identifiers, and pass that mapping in when initializing IAP.
Resultado:
Cree usuarios de prueba Sandbox IAP utilizando iTunes Connect para uso en la cuenta de iTunes de su dispositivo de prueba. Utilice una cuenta de correa verdadera*. Usted debe revisar la documentación del Apple’s Sandbox Tester ya que hay varias notas de uso importantes.
NOTE: See the iOS and Mac App Store guides for additional details.
TIP: (*) To simplify managing the email address, use an email service capable of sub-addressing (emailaccount+subaddress@example.com) such as Gmail, iCloud, and Outlook.com. This allows one email account to receive email for multiple sub-addresses.
Camine a través del wizard de creación de usuario.
Construya el proyecto Xcode para su juego utilizando Unity.
NOTE: Ensure the Bundle Identifier in Unity (Build Settings > iOS > Settings … > Other Settings > Bundle Identifier) matches that used in iTunes Connect.
Luego, en el proyecto Xcode de su juego, asegure que el Team (equipo) (Project Navigator > your game Target > General > Identity > Team) esté configurado a su cuenta de Apple Developer.
Ahora en el dispositivo, cierre la sesión de cualquier cuenta existente Apple ID, y luego inicie sesión como el Sandbox Tester. Cualquier compra posterior será enrutada a través del Apple Sandbox en vez de la Proudction Store.
Construya y corra el juego a su dispositivo iOS. UnityPurchasing.Initialize()
tendrá éxito si todo ha sido correctamente configurado. Ver Unity Purchasing Initialization
Ahora, pruebe el IAP al hacer una compra en el juego en el dispositivo. Un dialogo de compra modificado será mostrado explicando el hecho que esta compra está siendo realizada en un Ambiente Sandbox. Utilice la contraseña del Tester cuando sea solicitada para la compra.
WARNING: If the indicator is not present, then an account will be charged real money for the product.
Cuando construya una construcción de escritorio Mac, seleccione Mac App Store Validation
dentro de los Players Settings de Mac de Unity.
Una vez haya sido construida la App, actualice su archivo info.plist con el identificador de su bundle y strings de versión. Haga click derecho en el archivo .app y haga click en Show Package Contents
, ubique el archivo Info.plist
y actualice el string CFBundleIdentifier
al identificador del bundle de su aplicación.
Luego firme, empaquete, e instale su aplicación. Corra los siguientes comandos de una terminal OSX llenando con su “su.app” y “su.pkg” adecuadamente.
TIP: To sign the bundle, you may first need to remove the Contents.meta file if it exists: your.app/Contents/Plugins/unitypurchasing.bundle/Contents.meta
codesign -f --deep -s "3rd Party Mac Developer Application: " your.app/Contents/Plugins/unitypurchasing.bundle
codesign -f --deep -s "3rd Party Mac Developer Application: " su.app
productbuild --component your.app /Applications --sign "3rd Party Mac Developer Installer: " su.pkg
Con el fin de instalar y empaquetar correctamente, borre el paquete .app sin empaquetar antes de correr el nuevo paquete creado e instalarlo.
Luego ejecute la App de su carpeta Applications. La primera vez que haga esto, usted será solicitado que ingrese los detalles de su cuenta de iTunes, en el cual usted debe ingresar el login de usuario de su cuenta del iTunes Connect Sandbox. Usted luego será capaz de hacer compras prueba en el ambiente sandbox.
See pages on iOS and Mac Extended Functionality and Delivering applications to the Apple Mac Store for additional details on Apple App Store testing and signing.