当前位置: 首页 > 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
}

至此结束

http://www.lryc.cn/news/260499.html

相关文章:

  • AICore 带来了 Android 专属的 AI 能力,它要解决什么?采用什么架构思路?
  • python学习1
  • 【SpringBoot】Spring Boot 单体应用升级 Spring Cloud 微服务
  • el-tree搜索的使用
  • Java使用Microsoft Entra微软 SSO 认证接入
  • “华为杯”研究生数学建模竞赛2016年-【华为杯】A题:无人机在抢险救灾中的优化运用(附获奖论文及MATLAB代码实现)
  • 17--异常处理
  • 数据结构 | c++编程实现求二叉树的叶节点的个数。(递归非递归)
  • python读取csv文件
  • 租一台服务器多少钱决定服务器的价格因素有哪些
  • 深度学习(生成式模型)——ADM:Diffusion Models Beat GANs on Image Synthesis
  • Ubuntu无法解析域名DNS指向127.0.0.53问题处理
  • Intewell-Hyper I_V2.0.0_release版本正式发布
  • Mysql mybatis 语法示例
  • 第77讲:二进制方式搭建MySQL数据库5.7版本以及错误日志管理
  • R语言,table()函数实现统计每个元素出现的频数+并将最终统计频数结果转换成dataframe数据框形式
  • 微信小程序uniapp记住密码
  • 喜报!Coremail荣获2023信创“大比武”优秀生态融合奖
  • 知识库SEO:提升网站内容质量与搜索引擎排名的策略
  • GPIO复用时5个调试接口引脚要注意
  • 华为云CodeArts Check常见问答汇总
  • linux 应用开发笔记---【信号:基础】
  • 区块链:改变世界的技术
  • 防御升级!SMC2助力企业高效应对邮箱安全挑战
  • 19.(vue3.x+vite)v-if和v-for哪个优先级更高
  • 12. IO
  • 【稳定检索|投稿优惠】2024年艺术鉴赏与社会科学教育国际会议(ICAASSE 2024)
  • leetCode算法—3.无重复字符的最长子串
  • STM32 寄存器配置笔记——USART DMA接收
  • (基础篇)通过node增删改查连接mysql数据库