Skip to content

Latest commit

 

History

History
114 lines (88 loc) · 4.57 KB

File metadata and controls

114 lines (88 loc) · 4.57 KB

Android 集成指南

版本升级时会增删一些文件,请对比最新的文件,进行添加和删除
版本升级时会增删一些接口,请认真查看文档进行升级

拷贝文件

  • Classes/openinstall 文件夹拷贝到项目的 Classes 目录下
  • Android 目录下的 src 文件夹下的内容拷贝到项目的 app/src 目录下
  • Android 目录下的 libs文件夹下的jar文件拷贝到项目的 app/libs 目录下

注意:请开发者在进行升级时,重新拷贝并覆盖旧的文件,删除低版本SDK

最终文件目录结构如下:
项目结构

配置项目

添加 C++ 源文件定义

添加 openinstall 相关的 C++ 文件到 Android.mkLOCAL_SRC_FILES

        ../../../Classes/openinstall/OpenInstall.cpp \
        ../../../Classes/openinstall/AppData.cpp \
        ../../../Classes/openinstall/Android/AndroidConfig.cpp \
        ../../../Classes/openinstall/Android/OpenInstallProxy.cpp \
        ../../../Classes/openinstall/Android/AndroidOpenInstall.cpp

注意:请开发者在进行升级时,检查是否有新添加的 C++ 文件

示例如下:
Android.mk文件

添加应用权限

AndroidManifest.xml 中添加 openinstall 需要的权限

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

配置 AppKey 和 scheme

前往 [openinstall控制台] (https://developer.openinstall.io/) ,进入应用,选择 “Android集成”,切换到“Android应用配置”,获取应用的 AppKey 和 scheme。
获取appkey和scheme

AppKey 配置

AndroidManifest.xmlapplication 标签中添加

    <meta-data
        android:name="com.openinstall.APP_KEY"
        android:value="openinstall为应用分配的appkey"/>

scheme 配置

  • 将启动 AppActivity 替换成 openinstall 提供的 OpenInstallActivity
  • 给启动 Activity 添加 android:launchMode="singleTask" 属性
  • 给启动 Activity 添加 scheme 配置

最终配置大致如下

    <activity
        android:name="io.openinstall.sdk.OpenInstallActivity"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:label="@string/app_name"
        android:launchMode="singleTask"
        android:screenOrientation="landscape"
        android:theme="@android:style/Theme.NoTitleBar.Fullscreen">

        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>

        <intent-filter>
            <action android:name="android.intent.action.VIEW"/>

            <category android:name="android.intent.category.DEFAULT"/>
            <category android:name="android.intent.category.BROWSABLE"/>

            <data android:scheme="openinstall为应用分配的scheme"/>
        </intent-filter>

    </activity>

如果有其他的逻辑需要加入 AppActivity 中,可以采用继承 OpenInstallActivity 来实现

广告平台接入

1、针对广告平台接入,新增配置接口,在调用 init 之前调用。参考 广告平台对接Android集成指引

    openInstall2dx::AndroidConfig adConfig = openInstall2dx::AndroidConfig();
    // SDK 需要获取广告追踪相关参数
    adConfig.setAdEnabled(true);
    openInstall2dx::OpenInstall::configAndroid(adConfig);

注意:OpenInstall::config(adEnabled, oaid, gaid) 接口已移除,请使用新的配置接口

AndroidConfig 属性说明:

参数名 参数类型 描述
adEnabled bool 广告平台接入开关(必须)
macDisabled bool 是否禁止 SDK 获取 mac 地址
imeiDisabled bool 是否禁止 SDK 获取 imei
gaid string 通过 google api 获取到的 advertisingId,SDK 将不再获取gaid
oaid string 通过移动安全联盟获取到的 oaid,SDK 将不再获取oaid

2、为了精准地匹配到渠道,需要获取设备唯一标识码(IMEI),因此需要在 AndroidManifest.xml 中添加权限声明

<uses-permission android:name="android.permission.READ_PHONE_STATE"/>

3、在权限申请成功后,再进行openinstall初始化。无论终端用户是否同意,都要调用初始化

注意:OpenInstall::init(permission) 接口已移除,请自行处理权限请求