unity3d 接入指引
openinstall 已为开发者打包生成了 unitypackage ,只需将 package 拖拽到工程中并导入所有文件,然后按照文档做少量配置即可使用 openinstall 提供的所有功能
一、导入openinstall.unitypackage
右击Assets
,选择Import Package
中的Custom Package...
在文件选择框中选中openinstall.unitypackage
,导入所有文件
将Assets/Plugins/OpenInstall
下的OpenInstall.prefab
拖入对应的场景中使用 openinstall 实现业务逻辑
二、平台配置
请根据 使用指南 来做对应的配置
使用openinstall第三方插件文档集成时,如何快速获取AppKey、Associated Domains和scheme,下图为iOS相关配置信息(Android同理):
1. iOS平台
无需写一句Object-C代码,只需进行如下配置
特殊情况:
- 如果工程中已使用了
IMPL_APP_CONTROLLER_SUBCLASS
宏生成的customAppController.mm文件(或其它自定义名称),请在该文件中添加初始化方法和跳转回调方法,并删除掉openinstall插件中 Assets/Plugins/iOS/libs 目录下的CustomAppController.mm
文件;
1.1 配置appKey
在 Info.plist 文件中配置 appKey 键值对,如下:
<key>com.openinstall.APP_KEY</key>
<string>从openinstall官网后台获取应用的appkey</string>
以下为iOS一键跳转功能相关配置
1.2 配置universal links(适用于iOS9.0以后)
1)到苹果开发者网站,为当前的 AppID 开启关联域名(Associated Domains)服务:
2)创建新的(或更新现有的)描述文件,下载并导入到Xcode中(通过xcode自动生成的描述文件,可跳过这一步):
3)在 Xcode 中配置 openinstall 为当前应用生成的关联域名(Associated Domains)(openinstall应用控制台 -> iOS集成 -> iOS应用配置 -> 关联域名(Associated Domains)):
openinstall完全兼容微信openSDK1.8.6以上版本的通用链接跳转功能,注意微信SDK初始化方法中,传入正确格式的universal link链接:
//your_wxAppID从微信后台获取,yourAppkey从openinstall后台获取
[WXApi registerApp:@"your_wxAppID" universalLink:@"https://yourAppkey.openinstall.io/ulink/"];
微信开放平台后台Universal links配置,要和上面代码中的保持一致
- 微信SDK更新参考微信开放平台更新文档
1.3 配置scheme(适用于iOS9以下)
在Xcode里选中 Target -> Info -> URL Types,配置 openinstall 为当前应用生成的 Scheme,如图所示:
2. Android 平台
简单配置
将sample/Android
目录中的AndroidManifest.xml
文件拷贝到项目的Assets/Plugin/Android/
目录下,并修改文件内容:将 openinstall 为应用分配的 appkey 和 scheme 替换至相应位置。(scheme的值详细获取位置:openinstall应用控制台 -> Android集成 -> Android应用配置)
自定义配置
1) 如果项目已存在自己的AndroidManifest.xml
文件,根据下图标注的内容做相应的更改:
2) 如果拥有自己的Application
,可参考sample/Android/src
目录中的OiApplication.java
修改自己的Application
对 openinstall 进行初始化,此时AndroidManifest.xml
中的application
设置仍然使用自己的Application
3) 如果需要使用自己的跳转Activity
,可参考sample/Android/src
目录中的OiUnityActivity.java
在跳转Activity
的onCreate(Bundle savedInstanceState)
和onNewIntent(Intent intent)
中添加跳转处理代码
三、使用指南
除了 快速下载 功能,其他功能都需要先 导入空间命令并获取实例
使用OpenInstall
之前,请先导入命名空间
using io.openinstall.unity;
然后通过GameObject
获取OpenInstall
实例
private OpenInstall openinstall;
void Start () {
openinstall = GameObject.Find("OpenInstall").GetComponent<OpenInstall>();
}
1. 快速下载
如果只需要 快速下载 功能,无需其它功能(携带参数安装、渠道统计、一键跳转),完成初始化相关工作即可
2. 一键跳转
完成文档前面iOS和Android介绍的一键跳转相关配置
获取跳转数据
在Start
方法中,获取到实例之后注册跳转回调,这样当 跳转App 时,会回调方法,并可在回调中获取跳转数据
openinstall.RegisterWakeupHandler(getWakeupFinish);
public void getWakeupFinish(OpenInstallData wakeupData)
{
Debug.Log("OpenInstallUnity getWakeupFinish : 渠道编号=" +wakeupData.channelCode
+ ", 自定义数据=" + wakeupData.bindData);
}
3. 携带参数安装高级版功能
获取安装数据
在应用需要安装参数时,调用以下 api 获取由 SDK 保存的安装参数,可设置超时时长(一般为8~15s),单位秒
openinstall.GetInstall(10, getInstallFinish);
public void getInstallFinish(OpenInstallData installData)
{
Debug.Log("OpenInstallUnity getInstallFinish : 渠道编号=" + installData.channelCode
+ ",自定义数据=" + installData.bindData);
}
_备注:
- 注意这个安装参数尽量不要自己保存,在每次需要用到的时候调用该方法去获取,因为如果获取成功sdk会保存在本地
- 该方法可重复获取参数,如需只要在首次安装时获取,可设置标记,详细说明可参考openinstall官网的常见问题
4. 渠道统计高级版功能
SDK 会自动完成访问量、点击量、安装量、活跃量、留存率等统计工作。其它业务相关统计由开发人员代码埋点上报
4.1 注册上报
在用户注册成功后,调用接口上报注册量
openinstall.ReportRegister();
4.2 效果点上报
统计终端用户对某些特殊业务的使用效果,如充值金额,分享次数等等。调用接口前,请先进入 openinstall 管理后台 “效果点管理” 中添加效果点,第一个参数对应管理后台 效果点ID
openinstall.ReportEffectPoint("effect_test", 1);
四、导出apk/ipa包并上传
- 代码集成完毕后,需要导出安装包上传openinstall后台,openinstall会自动完成所有的应用配置工作。
- 上传完成后即可开始在线模拟测试,体验完整的App安装/跳转流程;待测试无误后,再完善下载配置信息。
下面是apk包的上传界面(后台截图):