当前位置: 首页 > news >正文

[Unity]关于Unity接入Appsflyer并且打点支付

首先需要去官方下载Appsflyer的UnityPackage

链接在这afPackage

然后导入

导入完成

引入此段代码

using AppsFlyerSDK;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;public class AppflysManager : MonoBehaviour
{public static AppflysManager instance;// Start is called before the first frame updateprivate void Awake(){instance = this;}void Start(){AppsFlyer.initSDK("your Key", "你的包名", this);AppsFlyer.startSDK();}// Update is called once per framevoid Update(){}public void dadian(string dingyi,string mzi,string zhi) {Dictionary<string, string>eventValues = new Dictionary<string, string>();eventValues.Add("number", "1");AppsFlyer.sendEvent(dingyi, eventValues);}}

然后把他挂在到一个有DontDestroyOnLoad(this)的物体上 没有的话就自己在awake里面加一个

接下来需要引入

这个物体 Key Id和上面一样

然后下面就是埋点支付的教程了

在In app 的这个方法里

 public PurchaseProcessingResult ProcessPurchase(PurchaseEventArgs purchaseEvent){}

添加

 public AppsFlyerAndroid azf;void Start(){azf = new AppsFlyerAndroid();
}
public PurchaseProcessingResult ProcessPurchase(PurchaseEventArgs purchaseEvent){string prodID = purchaseEvent.purchasedProduct.definition.id;string price = purchaseEvent.purchasedProduct.metadata.localizedPrice.ToString();string currency = purchaseEvent.purchasedProduct.metadata.isoCurrencyCode;string receipt = purchaseEvent.purchasedProduct.receipt;var recptToJSON = (Dictionary<string, object>)AFMiniJSON.Json.Deserialize(purchaseEvent.purchasedProduct.receipt);var receiptPayload = (Dictionary<string, object>)AFMiniJSON.Json.Deserialize((string)recptToJSON["Payload"]);var transactionID = purchaseEvent.purchasedProduct.transactionID;
#if UNITY_ANDROIDvar purchaseData = (string)receiptPayload["json"];var signature = (string)receiptPayload["signature"];azf.validateAndSendInAppPurchase("你的谷歌支付秘钥",signature,purchaseData,price,currency,null,this);
#endif
}

至此结束

相关文章:

  • 【QT】时间日期与定时器
  • 二叉树:数据结构中的灵魂
  • 帆软FCRP模拟题
  • 【PHP入门】1.1-PHP初步语法
  • MVC Gantt Wrapper:RadiantQ jQuery
  • 2023/12/17 初始化
  • LCR 180. 文件组合
  • Draw.io or diagrams.net 使用方法
  • python绘制gif动图--避免收费拒绝水印
  • 尚硅谷JavaWeb电子书城项目(Java+Mysql+Tomcat+Jsp)
  • 超详细 | 黏菌算法原理、实现及其改进与利用(Matlab/Python)
  • 直播原理,直播CDN及相关协议
  • Ubuntu 命令行安装 Clang 16或者Clang 17的过程
  • C语言编程题-单身狗
  • Unity_FairyGUI发布导入Unity编辑器资源报错
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • download使用浅析
  • iOS 系统授权开发
  • java正则表式的使用
  • jQuery(一)
  • MySQL Access denied for user 'root'@'localhost' 解决方法
  • Spark学习笔记之相关记录
  • 近期前端发展计划
  • 开发了一款写作软件(OSX,Windows),附带Electron开发指南
  • 开源中国专访:Chameleon原理首发,其它跨多端统一框架都是假的?
  • 前端之Sass/Scss实战笔记
  • 深度学习中的信息论知识详解
  • 实习面试笔记
  • 微服务框架lagom
  • 06-01 点餐小程序前台界面搭建
  • 大数据全解:定义、价值及挑战
  • ​学习一下,什么是预包装食品?​
  • (12)目标检测_SSD基于pytorch搭建代码
  • (2)Java 简介
  • (二)丶RabbitMQ的六大核心
  • (九)One-Wire总线-DS18B20
  • (十)【Jmeter】线程(Threads(Users))之jp@gc - Stepping Thread Group (deprecated)
  • (学习日记)2024.04.10:UCOSIII第三十八节:事件实验
  • (转)h264中avc和flv数据的解析
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • (转)Sql Server 保留几位小数的两种做法
  • ***详解账号泄露:全球约1亿用户已泄露
  • **Java有哪些悲观锁的实现_乐观锁、悲观锁、Redis分布式锁和Zookeeper分布式锁的实现以及流程原理...
  • .net Application的目录
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .net redis定时_一场由fork引发的超时,让我们重新探讨了Redis的抖动问题
  • .net 简单实现MD5
  • .net 桌面开发 运行一阵子就自动关闭_聊城旋转门家用价格大约是多少,全自动旋转门,期待合作...
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .NET/C# 使窗口永不获得焦点
  • .net安装_还在用第三方安装.NET?Win10自带.NET3.5安装
  • .NET企业级应用架构设计系列之技术选型
  • .php文件都打不开,打不开php文件怎么办
  • [30期] 我的学习方法