开发者中心

一.准备工作

概述

本文是CLLinkSDK_Android v1.0.0版本的接入文档,用于指导SDK的使用方法,默认读者已经熟悉 IDE(Eclipse 或者 Android Studio)的基本使用方法,以及具有一定的 Android 编程知识基础。

在对接之前您需要花5-10分钟阅读以下条目,可减少对接过程中的问题

合规性说明

SDK名称 场景描述 收集个人信息的类型 第三方机构名称 数据是否加密传输 第三方隐私政策链接
上海璟梦信息科技有限公司追踪短链SDK 场景复原 上海璟梦信息科技有限公司追踪短链SDK提供场景还原服务过程中收集和使用的信息包括:
跳转链接、参数信息(密文)、应用Team ID(iOS)、以及部分网页必要参数信息:用于保证追踪短链服务的正常提供,实现场景还原功能
上海璟梦信息科技有限公司 https://sdk.253.com/commit-detail/rcc5zd/fd21s8

快速体验demo

SDK压缩包中demo文件是追踪短链示例工程,使用Android studio打开完成以下步骤配置即可运行测试:

  1. 将build里面的applicationId换成您的测试包名
  2. 将build里面的签名配置改成您的签名配置
  3. 将AndroidManifest 里面的appId换成您创建应用后生成的AppKey

开发环境搭建

(1)将开发包拷贝到工程
a.将SDK中libs目录下的jar包拷贝到您工程的libs目录下,如没有该目录需新建。
并在build文件的dependencies中添加aar包依赖:

repositories {
    flatDir {
        dirs '../app/libs'
    }
}
dependencies {implementation fileTree(include: ['*.jar'], dir: 'libs')}

(2)权限配置AndroidManifest.xml文件

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

配置权限说明

权限名称 权限说明 使用说明
INTERNET 允许应用程序联网 用于访问网关和认证服务器
ACCESS_WIFI_STATE 允许访问WiFi网络状态信息 允许程序访问WiFi网络状态信息
ACCESS_NETWORK_STATE 允许访问网络状态 区分移动网络或WiFi网络
CHANGE_NETWORK_STATE 允许改变网络连接状态 设备在WiFi跟数据双开时,强行切换使用数据网络
CHANGE_WIFI_STATE 允许改变WiFi网络连接状态 设备在WiFi跟数据双开时,强行切换使用

(3) 在AndroidManifest的application标签中配置:

<meta-data android:name="CL_SDK_APP_KEY" android:value="您应用的AppKey"/>

(4) 混淆规则:

-dontwarn com.chuanglan.cllink.**
-keep class com.chuanglan.cllink.** { *;}

Scheme集成

Android系统中App之间是相互隔离的,通过URI Scheme,App之间可以相互调用,并且可以传递参数。
manifest中配置:

<!-- 将“你的Scheme”替换为后台填写的URI Scheme。-->
<activity
    android:name=".WelcomeActivity">
    <intent-filter>
        <data android:scheme="你的Scheme"/>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

Applink集成

Google Applink 支持Android 6.0及以上版本,用于在短信,备忘录,邮箱等场景一链拉起app,注意部分手手机可能无法支持applink
使用方式
使用applink,需要在后台配置填写应用的签名文件的SHA256值,签名文件的SHA256值可通过以下命令获取,同时客户端manifest需要加入applink相关配置信息

keytool -list -v -keystore 您的签名文件

manifest中配置:

<!-- 将“魔链分配的域名”替换为后台域名管理中支持applink的域名-->
<!-- 如果想为多个域名添加applink,请增加多个intent-filter并修改host>
<activity
    android:name=".WelcomeActivity">
    <intent-filter>
        <data android:scheme="你的Scheme"/>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
    </intent-filter>
    //applink 配置
     <intent-filter android:autoVerify="true">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data
            android:scheme="https"
            android:host="CLLink分配的域名" />
    </intent-filter>
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

二.SDK使用说明

1.初始化

调用SDK其他任何方法前,请确保已调用过初始化,否则会失败并返回未初始化。
方法原型

public void init(Context context){}

参数描述

参数 类型 说明
context Context 必须传ApplicationContext对象

示例代码

 CLBaseManager.init(getApplicationContext());

2.注册全局监听

注册默认路由回调。当下发的cllink时,将触发此处JMLinkResponse回调。开发者可以在回调中获取参数。 建议程序Application或静态类或onCreate中调用。并且一定要在wakeUpLink()接口前调用
方法原型

public void registerWakeUpCallBack (CLWakeUpListener clWakeUpListener){}

参数描述

参数 类型 说明
clWakeUpListener CLWakeUpListener 回调监听,onWakeUp是该监听中唯一的抽象方法,即void onWakeUp(CLLinkResponse clLinkResponse)

示例代码

 CLLinkManager.registerWakeUpCallBack(new CLWakeUpListener() {
            @Override
            public void onWakeUp(CLLinkResponse clLinkResponse) {
                
            }
        });

回调说明:  onWakeUp(CLLinkResponse clLinkResponse) 以下为对象中的参数

参数 类型 说明
paramMap Map 跳转时带的自定义参数map
uri Uri 用于跳转的实际uri
source String 本次JMLink的回调来源,1、Scheme(deeplink/applink),2、Replay(场景还原),3、Unknown(未知来源)
type String 本次回调类型,1、Installation(安装),2、Open(打开),3、Unknown(未知)

3.唤醒应用方法

通过以下接口,可以实现:通过短链从手机浏览器打开App具体页面
App未安装时,通过短链跳转到下载页面,安装后,第一次打开跳转到之前的页面实现场景还原
方法原型

public void wakeUpLink(Intent intent) {}

参数描述

参数 类型 说明
intent Intent 打开应用首页或启动页intent

示例代码

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //首先注册回调接口
        CLLinkManager.registerWakeUpCallBack(new CLWakeUpListener() {
            @Override
            public void onWakeUp(CLLinkResponse clLinkResponse) {
                
            }
        });
        //然后再进行数据路由
        CLLinkManager.wakeUpLink(getIntent());
    }
}

三、创建短链

登录官网进入开发者平台,选择【追踪短链】-【短链管理】-【创建短链】。
1628763478(1).png

1.App创建应用

1628763666(1).png
依照指示填写相关内容即可,短链投放渠道可以选择上海璟梦信息科技有限公司、自有平台。

2.小程序创建应用

1628763827(1).png
依照指示填写相关内容即可,短链投放渠道可以选择上海璟梦信息科技有限公司、自有平台。

  • 小程序跳转地址获取方法如下:

(1)登录小程序后台;
(2)选择右上角【工具】;
1628763951(1).png
(3)根据页面提示填写相关内容后即可获取。

3.集成模板页

在创建短链时,可以选择使用自己的下载页,在此之前需要为下载页完成 Web集成。
1628764235(1).png
将以上段代码嵌入到短链落地页(即用户点击短链跳转的目标页面)body标签之前即可。
也可以使用使用千帆互动提供的模板页,需要在模板页进行编辑。
1628764338(1).png