快速实现以深度链接为基础的闭环分享功能

简介: 什么是闭环分享现在,市场上主流app都具有分享功能。但是绝大部分app的分享功能仅仅局限于分享出去,而且在微信限制了开发者获取分享结果状态后,通过分享功能进行app或者业务推广的方式受到很大的限制。

什么是闭环分享

现在,市场上主流app都具有分享功能。但是绝大部分app的分享功能仅仅局限于分享出去,而且在微信限制了开发者获取分享结果状态后,通过分享功能进行app或者业务推广的方式受到很大的限制。比如说:

1.你不知道用户是否真的分享了 2.不知道分享的链接传播效果怎么样,多少人点击 3.不知道如何有效的引导用户到App,转化沉淀成自己的客户

ShareSDK从这几个问题入手,基于深度链接打造出闭环分享功能,从而真正意义上解决以上烦恼。使用体验如下:
image

快速实现以深度链接为基础的闭环分享功能
快速实现流程

一、注册、登陆开发者后台

打开 Mob官网 点击右上角登陆或注册

成功登陆后,点击进入 “产品中心” ,如下图:
image

快速实现以深度链接为基础的闭环分享功能
在 “开发者服务” --> “开发者平台” 栏目,点击 “立即进入” ,进入之后如下图:
image

快速实现以深度链接为基础的闭环分享功能
二、下载SDK包

先进入Mob官网 SDK下载页 ,iOS开发者请从官网下载,如下图:
image

快速实现以深度链接为基础的闭环分享功能
保存配置后即可点击 “下载” ,如下图:
image

快速实现以深度链接为基础的闭环分享功能
安卓请使用Gradle在线集成,先选择配置,再使用Gradle脚本,如下图:
image
image

快速实现以深度链接为基础的闭环分享功能
快速实现以深度链接为基础的闭环分享功能
三、开发者后台配置

如果您尚未使用ShareSDK,请点击 “添加应用” ,输入您的 “应用名称” ,点击 “保存”,如下图:
image

快速实现以深度链接为基础的闭环分享功能
然后在左边栏点击 “ShareSDK” ,在弹出框中选择 “确定添加” ,如下图:
image

快速实现以深度链接为基础的闭环分享功能
如果您已经使用了ShareSDK,请选择您的应用并打开ShareSDK边栏,点击 “闭环分享” 标签,如下图:
image

快速实现以深度链接为基础的闭环分享功能
图上有对闭环分享功能的简单介绍和相关集成文档,直接点击 “立即体验” 即可开始使用,点击后如下图:
image

快速实现以深度链接为基础的闭环分享功能
对于iOS开发者,请配置好 “TeamID” 、 “Bundle ID” 和 “下载地址” ,然后点击 “保存设置” ,如下图:
image

快速实现以深度链接为基础的闭环分享功能
图上系统自动生成的 “Scheme” 和 “Association Domain” 是用于Xcode项目配置的,请参考下文: 五、iOS客户端开发配置

对于安卓开发者,请将配置标签切换到 “Android” 填写好 “下载地址” 和 “微信应用宝”的微下载链接, 如下图:
image

快速实现以深度链接为基础的闭环分享功能
图上系统自动生成的 “Scheme” 和 “App Links Host” 是用于安卓项目配置的(使用Gradle集成的可以不用考虑这个),请参考下文 六、安卓客户端开发配置

到此,开发者后台就完成了,下面请开始您简单轻松的客户端和网页端开发配置吧!

四、前端网页JS初始化

闭环分享讲究的是网页内容不仅能够被分享,更是能够回环到App,所以使用闭环分享功能时需要前端网页做一个简单的JS集成初始化。

打开您App中分享出去的网页源码 (仅在需要的网页中进行以下配置) ,在适当的位置引用我们提供的在线JS,如下图:
image

快速实现以深度链接为基础的闭环分享功能
在线JS地址为开发者后台看到的iOS配置中 “Association Domain” 的域名或者安卓配置中的“App Links Host” 域名下的 moblink.js ,例如根据上面开发者后台展示的结果则为: ahmn.t4m.cn/moblink.js,在JS中直接通过
JS引入之后即可写一段JS初始化代码了,如下图:
image

快速实现以深度链接为基础的闭环分享功能
关于JS初始化代码的释义如下:


以上JS代码初始化完成之后您的网页上将会多出一个浮层类似于下图:
image

快速实现以深度链接为基础的闭环分享功能
注意:仅手机模式下可见!建议通过谷歌浏览器的检查器调试。
至此,前端JS的配置工作就完成了,还是比较简单的。这个时候等客户端配置好了,点击上图浮层中的 “打开App” 按钮即可立即跳转到您的App客户端,并将对应的参数携带给您的App了。

五、iOS客户端开发配置

iOS客户端比较简单就只有两步,Xcode配置和代码开发:

1、Xcode配置

主要配置 Scheme 和 “Association Domain” ,直接从开发者后台复制、粘贴即可 scheme配置如下图:
image

快速实现以深度链接为基础的闭环分享功能
Association Domain配置如下图:
image

快速实现以深度链接为基础的闭环分享功能
提示:由于 “Association Domain” 是需要iOS证书打开该权限的,所以您可能需要更新一下您的证书,确保已开启该权限,否则Xcode会报错。
2、代码开发

场景还原设置代理

import

import

@interface AppDelegate ()
@end
@implementation AppDelegate

  • (BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOptions
    {

[ShareSDK setRestoreSceneDelegate:self];
...
}
...

pragma mark - ISSERestoreSceneDelegate

  • (void)ISSEWillRestoreScene:(SSERestoreScene *)scene Restore:(void (^)(BOOL))restoreHandler
    {

    //YES:进行场景还原,NO:不执行场景还原

    restoreHandler(YES);

}
@end
还原的场景视图配置

// 以下分类默认已经实现- (instancetype) initWithShareSDKScene:(SSERestoreScene *)scene方法,Build Settings -> Other Linker Flags 添加 -ObjC 所有ViewController自动实现此方法

import

// 用户如果需要获取透传的参数,对ViewController其他属性赋初值可以重写覆盖- (instancetype) initWithShareSDKScene:(SSERestoreScene *)scene方法如下:
// 例如DemoViewController为还原回来的场景视图
@interface DemoViewController ()
@property(nonatomic, strong) SSERestoreScene *scene;
@end
@implementation DemoViewController

  • (instancetype) initWithShareSDKScene:(SSERestoreScene *)scene
    {

if (self = [super init])
{
self.scene = scene;
...
}
return self;
}

  • (void)viewDidLoad {

    [super viewDidLoad];
    ...

    }

....
@end
六、安卓客户端开发配置

指定跳转的Activity

在 四、前端网页JS初始化 部分,初始化代码中 targetAction_And 字段设定的值即为要跳转的Activity名称,您需要在项目中创建一个与设定的名称相同的Activity。

获取场景数据

HashMap customDataMap = ShareSDK.getCustomDataFromLoopShare();
在跳转的目标Activity内(即上一步中设定的Activity),调用此接口来获取所需的场景数据。类型已经转换为 HashMap 类型,可以直接调用 toString() 方法来获取数据。

目录
相关文章
|
6月前
|
Web App开发 搜索推荐 Android开发
AppsFlyer 研究(三)OneLink平台归因、跳转、深度链接
AppsFlyer 研究(三)OneLink平台归因、跳转、深度链接
669 0
|
1月前
|
机器学习/深度学习 算法 开发工具
视觉智能平台常见问题之其他算法定制化开发如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
27 1
|
8月前
|
机器学习/深度学习 存储 数据采集
优质数据的稀缺性:深度分析及可能的解决方案
在信息化社会,数据被誉为新的石油。然而,与之相反的是,我们却面临着优质数据的严重缺乏。这种现象引发了一系列的问题,特别是在人工智能(AI)和机器学习(ML)领域,这一问题尤为突出。
143 0
优质数据的稀缺性:深度分析及可能的解决方案
|
机器学习/深度学习 自然语言处理 搜索推荐
承上启下:基于全域漏斗分析的主搜深度统一粗排
两阶段排序(粗排-精排)一开始是因系统性能问题提出的排序框架,因此长期以来粗排的定位一直是精排的退化版本,业内的粗排的优化方向也是持续逼近精排。我们提出以全域成交的hitrate为目标的全新指标,重新审视了召回、粗排和精排的关系,指出了全新的优化方向
93158 3
|
11月前
|
数据处理 数据库
ChatGPT学习企业产品、服务内容、往期方案,处理所输入的客户需求,定制化生成解决方案
ChatGPT学习企业产品、服务内容、往期方案,处理所输入的客户需求,定制化生成解决方案
126 0
|
人工智能 安全 物联网
阿里云产品体系粗略概述
阿里云产品体系粗略概述
272 0
|
存储 数据可视化 程序员
选择文库系统的时候需要重点注意和对比哪些东西?
本人程序员出身,接近15年的代码经验,对互联网产品和运营也一直在实践和研究,尤其是对文库产品有着深度理解,因为我自己也一直在运营文库项目。下面是我站在一个普通站长角度给出的一些经验,如果你也想做一个文库网站或文库平台,需要选择一套文库系统产品,请从下面几点出发去做对比,最终做出正确选择。
选择文库系统的时候需要重点注意和对比哪些东西?
|
数据可视化 搜索推荐 数据建模
【MarTech参考架构】Credera的MarTech参考架构第7部分:高级分析和营销测量
【MarTech参考架构】Credera的MarTech参考架构第7部分:高级分析和营销测量
|
存储 人工智能 监控
【MarTech参考架构】Credera的MarTech参考架构第5部分:营销自动化和活动管理
【MarTech参考架构】Credera的MarTech参考架构第5部分:营销自动化和活动管理
|
NoSQL 数据可视化 前端开发
搭建内部系统的好帮手 - Superblocks 深度评测
码匠通过使用 Superblocks 搭建一个内部数据看板为例,带您探究 Superblocks 使用体验如何。
272 0
搭建内部系统的好帮手 - Superblocks 深度评测

热门文章

最新文章