提示:以下代码(配置)由shareinstall根据当前应用动态生成,开发者可直接使用;按照以下步骤指引,10分钟即可完成Android SDK集成。

一、导入SDK

Android SDK 下载 v1.0.6 http://api.shareinstall.com/download/1.0.6/android

Android DEMO 下载 v1.0.6 http://api.shareinstall.com/download/1.0.6/androiddemo

从下载的ShareInstallSdk.zip文件中,将aar文件拷贝到项目的libs文件夹中,并导入

dependencies {
compile(name: 'ShareInstall_1.0.5', ext: 'aar')
}

(注:导入aar需检查build文件中是否已经加入以下代码,否则会报错)

repositories {
flatDir {
dirs 'libs'
}
}

二、基础配置

在AndroidMainfest.xml中添加权限声明。

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

在AndroidMainfest.xml中的application标签中添加分配给你应用的Appkey

<meta-data
android:name="com.shareinstall.APP_KEY"
android:value="K2BK7B6HH7F7R2"/>

在自定义Application中调用ShareInstall.getInstance().init(context)方法完成SDK初始化,初始化前先判断当前进程是否是应用的主进程。

public class MyApp extends Application {

@Override
public void onCreate() {super.onCreate();if (isMainProcess()) {ShareInstall.getInstance().init(getApplicationContext());}
}/*** 判断当前进程是否是应用的主进程** @return*/
public boolean isMainProcess() {int pid = android.os.Process.myPid();ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);for (ActivityManager.RunningAppProcessInfo appProcess : activityManager.getRunningAppProcesses()) {if (appProcess.pid == pid) {return getApplicationInfo().packageName.equals(appProcess.processName);}}return false;
}

}

如果使用ShareInstall控制中心提供的注册统计功能,可调用方法ShareInstall.getInstance().reportRegister(); 注意该方法要在ShareInstall.getInstance().init (context)方法之后调用,否则会抛异常。

// 调用注册接口
ShareInstall.getInstance().reportRegister();

在AndroidMainfest.xml中的application标签中添加android:name=".MyApplication"指定自定义的Application类,以便程序启动的时候初始化自定义Application类,而不是系统默认的Application类。

<applicationandroid:allowBackup="false"
android:icon="@mipmap/ic_launcher"
br/>android:name=".MyApplication"
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"android:theme="@style/AppTheme">
br/>android:supportsRtl="true"
android:theme="@style/AppTheme">
</application>

三、一键跳转

在AndroidMainfest的唤醒页面activity标签中添加intent-filter(一般为MainActivity),配置scheme,用于浏览器中拉起。

<activity
android:name=".MainActivity"
android:launchMode="singleTask">
<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="afap0343" />
</intent-filter>
</activity>

注:如果唤醒页面和启动页是同一Activity,则AndroidMaifest.xml的配置如下。

<activity
android:name=".MainActivity"
android:launchMode="singleTask">
<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="afap0343"/>
</intent-filter>
</activity>

个性化安装和一键唤醒都调用同一个方法ShareInstall.getInstance().getInfo()获取相关信息,第一个参数为Intent(注:Intent可传null,但在配置了scheme唤醒的页面必须传,否则拿不到传递过来的参数),第二个参数为信息回调监听

四、个性化安装

在APP需要个性化安装参数时(由web网页中传递过来的,如邀请码、游戏房间号等 自定义参数),调用以下方法,在回调中获取参数。

ShareInstall.getInstance().getInfo(intent, new AppGetInfoListener() {br/>@Override
public void onGetInfoFinish(String info) {
Log.d("ShareInstall", "info = " + info);
}
});

五、唤醒页面获取信息

public class WakeUpActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_wake_up);// 获取唤醒参数ShareInstall.getInstance().getInfo(getIntent(), listener);
}@Override
protected void onNewIntent(Intent intent) {super.onNewIntent(intent);// 此处要调用,否则app在后台运行时,会无法截获ShareInstall.getInstance().getInfo(intent, listener);
}private AppGetInfoListener listener = new AppGetInfoListener() {@Overridepublic void onGetInfoFinish(String info) {Log.d("ShareInstall", "info = " + info);}
};

转载于:https://blog.51cto.com/13877376/2147079

shareinstall之Android SDK集成相关推荐

  1. 极光推送服务器端文档,Android SDK 集成指南

    极光统计 Android SDK 集成指南 使用提示 本文是JAnalytics Android SDK 标准的集成指南文档. 匹配的 SDK 版本为:v1.0.0及以后版本. 如果您想要快速地测试. ...

  2. android sdk 封装html5,Android平台以WebView方式集成HTML5+SDK方法

    HTML5+ SDK 可以按照"独立应用"和"单页面"两种种方式进行集成,两种集成方式各有优点. 独立应用集成方式:即Widget集成方式,开发者在集成后可在需 ...

  3. android百度地图定位自定义图标,百度地图SDK集成及根据坐标实现定位(android studio开发)...

    百度地图SDK集成及根据坐标实现定位(android studio开发) 百度地图SDK集成及根据坐标实现定位(android studio开发) 1.下载百度地图SDK 链接:http://lbsy ...

  4. android 融云sdk集成,使用融云SDK集成

    使用融云开始还是遇到了很多的坑的,特别是看不太明白官方文档.或许自己不够有耐心. 期间还遇到了许多bug,比如,明明配置的没问题了,可我的手机还是连不上融云. 后来还是在融云的知识库中找到了解决办法, ...

  5. Android端穿山甲SDK集成

    Android端穿山甲SDK集成 流程 创建测试状态的应用及应用下对应的测试状态的代码位ID 项目对接SDK完毕后 拿APP到应用商店审核 得到应用商店的APP的下载地址 结合文档转换成apk下载地址 ...

  6. android sdk所有版本下载,android sdk全平台版本集成

    这是android sdk 全平台版本集成下载,谷歌经常被墙,有的同学也不知道如何下载平台环境,所以特意把全平台工具环境打包上来,方便大家下载. 软件介绍 android sdk全平台版本集成是一个管 ...

  7. Android第三方SDK集成 —— 极光推送

    前言: 本文前篇,可以帮助朋友们快速集成极光推送.本文后篇,是我自己项目实践的一些总结和心得,应该对读者们还是很有参考价值的,相信读完这篇文章,你会对极光推送有更加深入的理解,而不仅仅只是会集成而已. ...

  8. Android 项目集成有米 SDK 添加广告

    集成 SDK 的基本配置 步骤一 步骤二 步骤三 步骤四 集成 SDK 的无积分广告 步骤五 步骤六 步骤七 步骤八 步骤九 我们有时候需要在app里面,添加一些广告,作为额外的一些收入,那么该怎么办 ...

  9. android主流视频直播sdk,Android视频直播SDK集成指引

    手动安装 目前 ZegoLiveRoom SDK 仅支持通过拷贝库文件的方式,集成步骤如下. 1 准备环境 请确保开发环境满足以下技术要求: Android Studio 2.1 或以上版本 已经下载 ...

最新文章

  1. 动态资料导出导入平台(一)
  2. QQ聊天文字背影图片拉伸方法
  3. WEB前端面试题汇总整理01
  4. 异常是catch还是throws的简单原则
  5. 通过关闭UseDNS和GSSAPIAuthentication选项加速SSH登录
  6. python简单命令语句_python基础教程之[基础学习]MySQL常用语句命令总结|python基础教程|python入门|python教程...
  7. 小D课堂 - 新版本微服务springcloud+Docker教程_4-05 微服务调用方式之feign 实战 订单调用商品服务...
  8. 淘宝打折骗局--尤其硬盘
  9. android 7zip,7zip手机版
  10. 足球运动员的数据分析实战(python)
  11. python系统编程
  12. 内网ip如何变成公网ip?快解析转换域名映射外网访问
  13. ROS订阅tf并转换坐标
  14. sap销售发货的流程_外向交货发起的销售流程
  15. iOS App集成Apple Pay 编程指南(中国版)
  16. 利用名词到代词的蒸馏以理解动词,面向任务的实例分割注意力模型
  17. mysql 自动复制_MySQL 复制搭建(附mysql自动搭建脚本)
  18. 【计算机图形学】OpenGl基础
  19. 《Adobe After Effects CS6中文版经典教程》——2.7 预览特效
  20. 我的第一个应用(三)

热门文章

  1. 数据告诉你,胡歌的微世界
  2. 3Mysql 的常用操作
  3. 用 Docker 构建、运行、发布来一个 Spring Boot 应用
  4. JavaScript TreeView
  5. macOS完全卸载Android Studio方法
  6. 系统策略禁止安装python_Win10系统如何禁止自动安装捆绑软件?
  7. Web服务评估工具Nikto
  8. yunfile php,【转载】Typecho又拍云文件管理插件UpyunFile升级
  9. 怎么配置mysql的ip_设置MYSQL允许用IP访问
  10. 山东春季高考计算机可以报考的本科学校,山东春季高考专业有哪些?可以报考的本科院校吗?...