UnitySDK接入——Android篇

时隔半年再次更新博客,由于近期多是功能上面的工作,更多的是代码设计方面的积累,这种不可言传只可意会的经验也不适合以文字呈现。工作上也从SDK转移到了游戏功能,同事们也开始慢慢接触SDK,想想去年的自己也是一个小白,经历了一年的摸爬滚打也变成了SDK独当一面的人(容我装装逼),所以想把这一年积累的经验通过几篇博客记录一下,方便新手更快的熟悉SDK,并且少淌坑。

为什么要接SDK

作为一款游戏,如果你想赚钱那一定需要接SDK,SDK可以帮你通过渠道登陆,可以充值支付,也可以帮你弹出广告来盈利。

接入前的准备

要接入SDK首先要准备几个必要的东西
1. 可以稳定出包的工程。比如打好AB的可以直接build成apk或者xcode工程的Unity工程。
2. SDK文档、SDK的Demo
3. 完整的平台开发环境。比如Android开发环境,Android测试机。Mac机器,IOS测试机等。
4. 一个空的外部Android工程(这个笔者后面会放到github中)

如何将Android的SDK接入到Unity工程中

Unity接入AndroidSDK有两种方式
第一种方式是通过Unity打包Android工程的
1-1

Export功能导出一个Android工程,此时可以把游戏当做一个Android应用,根据他的生命周期调用SDK的初始化,在这个安卓工程中添加调用代码,保证Unity可以在不同的游戏生命周期中调用到正确Android的接口。

第二种方式是将一个外部Android工程以jar包的方式导入到Unity工程中,以后每次打包apk的时候Unity工程就带着SDK了。
两种方法各有优缺,但是建议将两种方法都尝试一下,难免哪天就要用到其中一种。讲一个笔者的亲身经历,笔者的项目用的是第二种方式接入。但是在接某个平台的时候发现jar包中的方法个数超过了65535,想必65535这个数Android的程序员们应该不陌生,如果jar包总方法数超过了上线,所接入的SDK又一个不能精简时只能使用dex分包。当然Unity也有dex分包的工具,但是笔者看了下工具的评价并不是很好就放弃了使用工具而是通过第一种方式出该平台的包。

开始接入

现在开始笔者将介绍如何使用上文说的第二种方式接入SDK,首先下载我们准备好的空的UnitySDK工程。目录结构大概是这样的这里写图片描述
src用来存放我们的SDK相关代码,libs用于存放SDK的各种so库和jar包,res用于存放SDK的资源,SDK用到的权限和配置需要修改AndroidManifest.xml。

根据SDK文档码代码

拿到了一个SDK,首先我们要看一遍文档大概了解这个SDK是做什么的,然后我们要跑跑他的Demo,通过实际操作大概了解SDK各个接口的效果。然后回过头将SDK文档

仔仔细细读10遍

下面开始按照文档需求一个一个接入,接入过程中除了必接的接口外也稍微看看非必接接口,比如SDK版本号、SDK资源号、SDK的一些静态标识建议也接进来以备不时之需。
具体Unity如何和Android交互可以参考笔者的另外一篇帖子 Unity社交功能开发——图片上传

将SDKAndroid工程导入到Unity中

修改Android工程配置如图
这里写图片描述
然后通过菜单Project->Clean将工程清理一下,此时工程的bin目录会生成一个jar包
这里写图片描述
在Unity工程中建立以下目录结构
这里写图片描述
将Android工程中的libs目录、res目录、AndroidManifest.xml拷贝,将生成的jar包放在bin目录下。拷贝过程中记得将libmain.so、libmono.so、libunity.so以及unity-classes.jar文件删除。因为unity打包时会自动添加,如果此时不删unity打包会提示jar包冲突。

用unity直接打包apk,出包测试吧

Unity接入SDK是指在Unity项目中集成第三方SDK的过程。具体的接入流程包括以下几个步骤: 1. 准备工作:首先,你需要从SDK提供商处获取SDK的相关文件,包括jar文件、iOS的.framework文件等。 2. 导入SDK文件:将SDK的相关文件导入到Unity项目中。对于Android平台,可以将jar文件放置在Unity项目的Plugins文件夹下;对于iOS平台,可以将.framework文件拖入Unity项目中。 3. 配置SDK参数:在Unity中,你需要根据SDK的要求配置相应的参数。这些参数可能包括App ID、App Key、回调URL等。你可以在Unity中创建一个脚本,用来存储和管理这些参数。 4. 调用SDK接口:根据SDK的文档和示例代码,调用SDK提供的接口完成相应的功能。你可以在Unity中编写脚本,通过调用SDK接口实现登录、支付、分享等功能。 以上是Unity接入SDK的一般流程。具体的接入方法和代码示例可以参考SDK提供商的文档和示例代码。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [unity接入SDK流程(android)](https://download.youkuaiyun.com/download/lb18520182905/44974594)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [[Unity]Unity接平台SDK(3种方式)](https://blog.youkuaiyun.com/zp288105109a/article/details/80244617)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [【Unity游戏开发】SDK接入与集成——小白入门](https://blog.youkuaiyun.com/weixin_34195142/article/details/85919506)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值