到目前为止,Android Studio已经是开发原生Android App的主流IDE,它是由Google官方设计并基于JetBrains的IntelliJ IDEA。我们魔窗开发的sdk也是使用此IDE。

       我们魔窗提供的企业级的深度链接(Deeplink)解决方案mLink,是致力于做创业者最需要、最好用、最贴心的App增长工具,并为创业者构建一个去中心化的高效连接时代,解决App有机增长、生态落地和流量共享的问题!

       越来越多的App开始对接我们的sdk,有些客户有不止一个App,甚至有些客户有几十个、几百个App。如果他们要集成sdk的话,需要对一个个App来加代码,确实是不小的工作量。我们开始考虑能否帮助客户快速实现sdk的集成。于是,考虑从开发工具的角度来实现。因为Android Studio和Xcode都可以安装plugin,他们本身的架构是支持插件化的,而且他们都有丰富的第三方plugin。很多plugin的确能够帮助开发者提高工作效率,所以我们开发了基于Android Studio的plugin。

       插件的安装很简单,通过搜素“magicwindow”就能找到我们的plugin,然后点install,重启AndroidStudio就能实现安装。

安装成功后,会在任务栏上出现”MagicWindow”的字样。表示plugin已经安装成功了。

我们可以再验证一下,点击“Check SDK Version”,如果您的工程中没有集成我们的sdk会提示“请先下载sdk”。如果已经集成了我们的sdk,会出现一个弹框告诉您当前使用魔窗sdk的版本号。

这个功能的好处在于,能明确知道sdk的版本号。我们在帮助客户排查集成的问题时,经常会先问一下客户使用的sdk版本号,很多客户不知道如何去看,所以我们提供了这个贴心的功能。
言归正常,对于一个Android App要从头开始集成我们的sdk,首先可能需要看我们的集成文档。复制一堆配置代码,包括java的以及xml的,一不小心还会复制错。借助我们的”Init MagicWindow Conf”功能,在Application类里可以通过图形化界面快速生成sdk的配置以及AndroidManifest.xml中的配置。

在sdk配置的对话框中输入app的渠道号和appKey,就会自动生成代码。这些生成的配置是集成我们sdk所必要的代码。

如果您想集成mLink的功能,也很简单。我们的plugin也提供了代码生成的功能。一般会在引导页的Activity中完成mLink的注册和路由,此时可以通过我们plugin的”Init MLink”功能来生成这些代码。

借助plugin生成的代码,只能自动生成registerWithAnnotation()这个方法。这个方法是借助Annotation实现mLink跳转,而无需写register逻辑。如果有特殊的跳转逻辑或者需要传递额外的参数,我们还是推荐您使用register()方法自己来实现。

对于mLink相关的Annotation,我们也提供了快捷生成的方式,这些方式是给懒人准备的,当然我们自己用起来也觉得很方便。

此时,基本完成sdk的集成步骤,也差不多介绍完了我们plugin的全部功能。最后还剩下一个功能,App正式发版时,一般会借助gradle打包,打包的时候会做一些混淆的工作。遇到过好几个客户,把我们的sdk也进行了混淆,从而导致无法使用mLink的功能。我们的plugin提供了“Keep MW SDK”的功能,它可以在proguard的配置中排除我们的sdk混淆。到此,sdk正式集成完成了,我们没有写一行代码:)。

如果大家对我们的plugin感兴趣,可以去github上拉我们的代码(https://github.com/magicwindow/mw-sdk-plugin),欢迎在使用时给我们提需求,也欢迎发pr给我们。

最后不能忘了Xcode的用户,我们会等到Swift 3正式发布后,考虑用Swift 3开发一款插件给iOS的开发者使用。

借助magicwindow sdk plugin快速集成sdk的更多相关文章

  1. 李洪强iOS开发之-环信03_集成 SDK 基础功能

    李洪强iOS开发之-环信03_集成 SDK 基础功能 集成 SDK 基础功能 在您阅读此文档时,我们假定您已经具备了基础的 iOS 应用开发经验,并能够理解相关基础概念. SDK 同步/异步方法区分 ...

  2. Android Studio快速集成讯飞SDK实现文字朗读功能

    今天,我们来学习一下怎么在Android Studio快速集成讯飞SDK实现文字朗读功能,先看一下效果图: 第一步 :了解TTS语音服务 TTS的全称为Text To Speech,即“从文本到语音” ...

  3. 【Unity游戏开发】SDK接入与集成——小白入门篇

    一.简介 通常一款游戏开发到后期,一般都会涉及到第三方SDK的接入与集成,对于不熟悉SDK接入的同学来说,接SDK每次都是云里雾里,而熟悉SDK接入的同学又觉得不断地重复做接入SDK工作这样没有成就感 ...

  4. 视频云SDK iOS持续集成项目实践

    1. 前言 2016年, 我们维护的 iOS推流播放融合SDK KSYLive_iOS 在github上发布了40多个版本, 平均两周发布一个新版本, 经历了最初痛苦的全手动版本构建和维护, 到后来慢 ...

  5. 使用 CocoaPods 给微信集成 SDK 打印收发消息

    使用 CocoaPods 给微信集成 SDK 打印收发消息 推荐序 本文介绍的是一套逆向工具,可以在非越狱手机上给任意应用增加插件.在文末的示例中,作者拿微信举例,展示出在微信中打印收发消息的功能. ...

  6. iOS - 集成SDK问题

    1.大部分社交平台接口不支持https协议. 问题描述:在iOS9下,系统默认会拦截对http协议接口的访问,因此无法获取http协议接口的数据.对ShareSDK来说,具体表现可能是,无法授权.分享 ...

  7. ShareSDK入门指南:Android 10分钟快速集成

    ShareSDK 官方已提供Android 快速集成教程,以官方教程为参考,本文重点指导大家在集成中遇到的问题. Android 快速集成官方教程:http://wiki.mob.com/Androi ...

  8. OpenCV3.4.1快速集成到Android studio中,10分钟搞定

    OpenCV3.4.1快速集成到Android studio中,10分钟搞定     转载 https://blog.csdn.net/yu540135101/article/details/8259 ...

  9. 轻量易用的微信Sdk发布——Magicodes.Wx.Sdk

    概述 最简洁最易于使用的微信Sdk,包括公众号Sdk.小程序Sdk.企业微信Sdk等,以及Abp VNext集成. GitHub地址:https://github.com/xin-lai/Magico ...

随机推荐

  1. BZOJ-3282 Tree Link-Cut-Tree(似乎树链剖分亦可)

    蛋蛋用链剖A的,我写的LCT 3282: Tree Time Limit: 30 Sec Memory Limit: 512 MB Submit: 1241 Solved: 542 [Submit][ ...

  2. POJ2437 Muddy roads

    Description Farmer John has a problem: the dirt road from his farm to town has suffered in the recen ...

  3. HDU 4901 The Romantic Hero

    The Romantic Hero Time Limit: 3000MS   Memory Limit: 131072KB   64bit IO Format: %I64d & %I64u D ...

  4. appium跑demo简单实例讲解

    安装appium,设置 demo.pyfrom appium import webdriver #要装webdriver,方法查看http://www.cnblogs.com/sincoolvip/p ...

  5. jboss7 添加虚拟目录 上传文件路径

    直接在jboss-as-7.1.1.Final\welcome-content\下加个子目录: jboss-as-7.1.1.Final\welcome-content\logs. 即可访问.

  6. spark对于elasticsearch里的复杂类型支持

    IP,直接在case class里用string, 可以考虑先用其它程序生成相关的mapping,然后再去用spark填充数据

  7. std::bind(二)

    bind - boost 头文件: boost/bind.hpp bind 是一组重载的函数模板. 用来向一个函数(或函数对象)绑定某些参数. bind的返回值是一个函数对象. 它的源文件太长了. 看 ...

  8. easyui datagrid 通过复选框删除新追加的数据问题

    之前写好的功能在保存好数据后再通过复选框删除是没有问题的,可现在想多追加几行,然后选择删除新追加的某几行或一行,通过$('#dg').datagrid('getChecked')方法返回选中行,然而返 ...

  9. Windows 下的.NET+ Memcached安装

    转载请标明出处: http://www.yaosansi.com/ 原文:http://www.yaosansi.com/post/1396.html Memcached官方:http://danga ...

  10. IIS负载均衡-Application Request Route详解第一篇: ARR介绍(转载)

    IIS负载均衡-Application Request Route详解第一篇: ARR介绍 说到负载均衡,相信大家已经不再陌生了,本系列主要介绍在IIS中可以采用的负载均衡的软件:微软的Applica ...