国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Unity接入IAP內(nèi)購(Android,IOS)最新流程,第一篇:內(nèi)購接入

這篇具有很好參考價值的文章主要介紹了Unity接入IAP內(nèi)購(Android,IOS)最新流程,第一篇:內(nèi)購接入。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

歡迎進(jìn)入Unity內(nèi)購系列

你好! 這將是一個系列的文章
第一篇 介紹客戶端里支付的調(diào)起以及購買。
第二篇 介紹后臺對購買結(jié)果的驗證以及發(fā)貨(IOS)。
第三篇 介紹后臺對購買結(jié)果的驗證以及發(fā)貨(Android)。
第四篇 介紹后臺對內(nèi)購?fù)藛螁栴}的處理(IOS欺詐檢測以及欺詐信息反饋)。

整體流程介紹

我們是用的Unity客戶端+PHP后臺

客戶端內(nèi)完成內(nèi)購 -> 內(nèi)購結(jié)果發(fā)送給PHP后臺 -> PHP后臺向IOS或Google后臺請求驗證訂單真實性 -> 驗證通過則進(jìn)行發(fā)貨 -> 正常情況到此就結(jié)束了

非正常情況:如果玩家后期在IOS或Google申請退款,如果退款成功,則IOS或Google會向我們提供的接口發(fā)送通知,這時我們需要對退款訂單進(jìn)行處理

第一篇(內(nèi)購接入)

本篇介紹unity里內(nèi)購插件IAP的接入,這一篇只包含客戶端內(nèi)支付的調(diào)起以及購買。
流程非常簡單,不需要開啟Unity Service等服務(wù),也不需要Google后臺服務(wù)公鑰,只需5分鐘即可完成接入,只需要按照我的流程,就一定能成功

接入環(huán)境

本篇介紹unity里內(nèi)購插件IAP的接入,這一篇只包含客戶端內(nèi)支付的調(diào)起以及購買。

  1. unity版本: 2021.3.21f1;其中JDK、NDK、SDK使用unity自帶的。
  2. IAP版本: 4.10.0;

一、創(chuàng)建空工程

使用2021.3.21f1創(chuàng)建3D核心模板空工程

二、添加IAP插件

1、打開Package Manager,選擇Unity Register,找到In App Purchasing,點擊Install。
unity iap ios,ios,unity,android

2、IAP導(dǎo)入完成之后會有一個彈窗讓我們Link Project,這里我們不用管,選Close就可以了。
不要選Link Project,因為那些是給單機(jī)游戲用的,需要客戶端內(nèi)自己驗證訂單的情況下要選Link Project,然后還要填入Google的公鑰以及其他設(shè)置。
unity iap ios,ios,unity,android

三、寫代碼

1、創(chuàng)建UI,新建2個按鈕,一個掛載腳本的空物體。
2、新建腳本,代碼如下,將腳本拖到空物體上。
3、給按鈕點擊事件賦值。
unity iap ios,ios,unity,android

using System;
using UnityEngine;
using UnityEngine.Purchasing;
using UnityEngine.Purchasing.Extension;
using UnityEngine.UI;

public class MyIAP : MonoBehaviour, IDetailedStoreListener
{
    IStoreController m_StoreController; // The Unity Purchasing system.

    void Start()
    {
        InitializePurchasing();
    }

    void InitializePurchasing()
    {
        var builder = ConfigurationBuilder.Instance(StandardPurchasingModule.Instance());

        //Add products that will be purchasable and indicate its type.
        //初始化產(chǎn)品列表,這里要跟IOS和Google后臺的產(chǎn)品列表一致
        builder.AddProduct("acepro_diamond1", ProductType.Consumable);
        builder.AddProduct("acepro_diamond2", ProductType.Consumable);
        builder.AddProduct("acepro_diamond3", ProductType.Consumable);
        builder.AddProduct("acepro_diamond4", ProductType.Consumable);
        builder.AddProduct("acepro_diamond5", ProductType.Consumable);
        builder.AddProduct("acepro_diamond6", ProductType.Consumable);

        UnityPurchasing.Initialize(this, builder);
    }
    //測試用的,正式代碼可刪除
    public void BuyDimaond1()
    {
        BuyProduct("acepro_diamond1");
    }
    //測試用的,正式代碼可刪除
    public void BuyDimaond2()
    {
        BuyProduct("acepro_diamond2");
    }
    //購買時調(diào)用的接口,外部只需調(diào)用這一個接口即可
    public void BuyProduct(string pruductid)
    {
        //開始購買
        m_StoreController.InitiatePurchase(m_StoreController.products.WithID(pruductid));
    }

    public void OnInitialized(IStoreController controller, IExtensionProvider extensions)
    {
        //初始化成功
        Debug.Log("In-App Purchasing successfully initialized");
        m_StoreController = controller;
    }

    public void OnInitializeFailed(InitializationFailureReason error)
    {
        //初始化失敗
        OnInitializeFailed(error, null);
    }

    public void OnInitializeFailed(InitializationFailureReason error, string message)
    {
        //初始化失敗
        var errorMessage = $"Purchasing failed to initialize. Reason: {error}.";

        if (message != null)
        {
            errorMessage += $" More details: {message}";
        }

        Debug.Log(errorMessage);
    }

    public PurchaseProcessingResult ProcessPurchase(PurchaseEventArgs args)
    {
        //Retrieve the purchased product
        var product = args.purchasedProduct;

        //Add the purchased product to the players inventory
        //付款成功,通知服務(wù)器發(fā)貨
        //此處需要自行添加邏輯,通知自己的服務(wù)器發(fā)貨,我這邊就省略了。
        /*
         ***
         ***
         ***
         */
        Debug.Log($"Purchase Complete - Product: {product.definition.id}");

        //We return Complete, informing IAP that the processing on our side is done and the transaction can be closed.
        return PurchaseProcessingResult.Complete;
    }

    public void OnPurchaseFailed(Product product, PurchaseFailureReason failureReason)
    {
        //付款失敗
        Debug.Log($"Purchase failed - Product: '{product.definition.id}', PurchaseFailureReason: {failureReason}");
    }

    public void OnPurchaseFailed(Product product, PurchaseFailureDescription failureDescription)
    {
        //付款失敗
        Debug.Log($"Purchase failed - Product: '{product.definition.id}'," +
            $" Purchase failure reason: {failureDescription.reason}," +
            $" Purchase failure details: {failureDescription.message}");
    }

}

四、Google后臺配置

Google后臺配置。(暫時無圖,等有圖了再補(bǔ)上)
只需要添加應(yīng)用內(nèi)商品,并激活即可,不需要其他設(shè)置。

五、IOS后臺配置

IOS后臺配置。(暫時無圖,等有圖了再補(bǔ)上)
只需要添加應(yīng)用內(nèi)商品,并激活即可,不需要其他設(shè)置。

六、打包測試

Google測試前提條件:
1、手機(jī)開啟VPN,否則無法完成初始化而且無法調(diào)起內(nèi)購。
2、需要Google賬號添加可用的銀行卡。如果可以正常調(diào)起內(nèi)購,并且顯示了價格等信息,基本上是沒有問題的,客戶端內(nèi)購買的流程就算結(jié)束了。

打包設(shè)置里面需要注意的地方我已經(jīng)用紅框標(biāo)記了
1、版本號需要比自己google商店的最新版本一樣或者比google版本高,如果比google版本低,會提示當(dāng)前版本不支持google結(jié)算等提示,另外google后臺的商品也需要設(shè)置為激活狀態(tài),否則也會出現(xiàn)當(dāng)前版本不支持google結(jié)算等提示

2、keystore換成自己的,而且要跟google上的一致。如果加入了Google Play 簽名計劃,那么也是無法完成內(nèi)購的,需要提包到google測試軌道,如果沒有加入Google Play 簽名計劃,可以本地打包直接測試。
3、包名肯定是需要一致的。

總的來說就是要和自己google上的應(yīng)用,包名、簽名、版本一致就可以了。
unity iap ios,ios,unity,android
unity iap ios,ios,unity,android
unity iap ios,ios,unity,android

七、Demo

其中的代碼可直接使用,APK可直接運行,第一個商品是有效的,第二個商品是無效的。
unity iap ios,ios,unity,android
unity iap ios,ios,unity,android

Demo地址如下:
Unity IAP完整Demo,內(nèi)含可運行APK文章來源地址http://www.zghlxwxcb.cn/news/detail-849363.html

到了這里,關(guān)于Unity接入IAP內(nèi)購(Android,IOS)最新流程,第一篇:內(nèi)購接入的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Unity接入IAP、服務(wù)器驗單(Google Play)

    Unity接入IAP、服務(wù)器驗單(Google Play)

    最近因為項目需要,被分配來做項目SDK接入以及上架相關(guān)事宜。搞了好幾天關(guān)于Unity接入支付的SDK,接入很簡單,卡的最久的就是服務(wù)器驗單,google相關(guān)文檔也不是很全,走通之后覺得可以發(fā)出來共享一下,第一次寫文章,有什么不足多多見諒 Unity已經(jīng)集成了Google Pay、Apple

    2023年04月11日
    瀏覽(26)
  • Unity3D PC、Android、iOS平臺打包流程

    Unity3D PC、Android、iOS平臺打包流程

    在Unity窗口中,按下Ctrl+Shift+B快捷鍵,或者在菜單欄選擇File-BuildSettings...,打開設(shè)置窗口。“Platform”下的選擇項默認(rèn)選擇“Windows,Mac,Linux”。單擊左下方的“Player Settings...”繼續(xù)后續(xù)設(shè)置(應(yīng)用名、應(yīng)用分辨率、圖標(biāo)等),如圖1-1所示。 圖1-1 PC平臺選擇 接著,點擊Add Op

    2023年04月20日
    瀏覽(35)
  • 最新ios證書申請流程

    最新ios證書申請流程

    蘋果官方申請ios證書的方法,需要mac電腦,需要使用鑰匙串管理先生成csr文件,然后去蘋果開發(fā)者中心生成證書,然后再用mac電腦導(dǎo)出p12證書。假如我們沒有mac電腦,又如何申請證書呢?這個教程我將教會大家如何使用windows電腦申請ios證書 首先,申請ios證書,需要蘋果開發(fā)

    2024年02月05日
    瀏覽(28)
  • Unity與iOS交互(2)——接入SDK

    【前言】 接入Android和iOS SDK有很多相同的地方,建議先看下Android SDK如何接入。 ?【UnityAppController詳解】 ?整個程序的入口在MainApp文件下的 main.mm 文件中,先加載了unityframework,然后調(diào)用runUIApplicationMain。源碼如下:(這些源碼在Xcode工程里都有) 可以看看 UnityFramework.h 文件中

    2024年02月13日
    瀏覽(29)
  • Java接入內(nèi)購 Apple Pay、Google Play

    Java接入內(nèi)購 Apple Pay、Google Play

    內(nèi)購流程: 客戶端向服務(wù)器發(fā)起請求生成預(yù)訂單,服務(wù)器校驗后生成預(yù)訂單返回客戶端。若調(diào)起支付界面后未支付,則通知服務(wù)器取消本訂單。 客戶端拿到預(yù)訂單號后,在玩家完成付款操作后,攜帶預(yù)訂單號請求支付平臺,將預(yù)訂單號存儲在支付平臺中,并獲取支付憑證。

    2024年04月16日
    瀏覽(22)
  • iOS - 訂閱型內(nèi)購指南

    iOS - 訂閱型內(nèi)購指南

    一、App Store Connect 幫助 二、測試 三、訂閱狀態(tài) 四、問題思考 1、訂閱歸屬: 以往的消耗性內(nèi)購, 通常會生成訂單ID對應(yīng)到蘋果的內(nèi)購ID及用戶id,對于我們來說,內(nèi)購僅僅只是個支付工具,而訂閱型內(nèi)購有一整套銷售模型 訂閱內(nèi)購是跟隨AppleID的,但是在開發(fā)過程中,我們是獲

    2024年02月11日
    瀏覽(24)
  • iOS_蘋果內(nèi)購詳細(xì)步驟

    iOS_蘋果內(nèi)購詳細(xì)步驟

    什么是Apple Pay? 簡單說是一種“支付工具”。對于國外流行信用卡,Apple Pay很符合美國的國情。但對于中國,微信支付、支付寶支付更加便利符合中國的人的行為習(xí)慣。 說到這你可能就理解了,Apple Pay,就是類比支付寶類似的線上線下支付工具。 Apple Pay和 支付寶、微信一樣

    2023年04月09日
    瀏覽(33)
  • android支付寶接入流程

    android支付寶接入流程

    接入APP支付能力前,開發(fā)者需要完成以下前置步驟。 本文檔展示了如何從零開始,使用支付寶開放平臺服務(wù)端 SDK 快速接入App支付產(chǎn)品,完成與支付寶對接的部分。 要在您的應(yīng)用中接入支付寶 App 支付能力,您需要登錄支付寶開放平臺open.alipay.com),在開發(fā)者中心中創(chuàng)建您的

    2024年04月13日
    瀏覽(13)
  • IOS內(nèi)購自動續(xù)費訂閱測試

    一、IOS 內(nèi)購類型 1、 消耗型商品: 只可使用一次的產(chǎn)品,使用之后即失效,必須再次購買。 示例 :抽獎券。 2、 非消耗型商品: 只需購買一次,不會過期或隨著使用而減少的產(chǎn)品。 示例 :游戲 App 的賽道。 3、 自動續(xù)期訂閱: 允許用戶在固定時間段內(nèi)購買動態(tài)內(nèi)容的產(chǎn)品

    2024年02月16日
    瀏覽(15)
  • Java服務(wù)端接入蘋果內(nèi)購。實現(xiàn)票據(jù)二次校驗、自動續(xù)期訂閱

    Java服務(wù)端接入蘋果內(nèi)購。實現(xiàn)票據(jù)二次校驗、自動續(xù)期訂閱

    記錄一下 Java 服務(wù)端接入蘋果內(nèi)購。 蘋果規(guī)定在 APP Store上架的 APP 使用蘋果自己的支付方式(IAP內(nèi)購),并且蘋果會抽30%的稅。 上架商品包括:消耗性,非消耗性,自動續(xù)期訂閱,非續(xù)期訂閱。上架商品可在 APP Store后臺配置。 由用戶完成付款操作后,蘋果返回 票據(jù) 給 IO

    2024年02月02日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包