本文主要是介绍Android原生集成友盟SDK,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
2021.09记录,2023发布,如有不对,还请包含。发晚了
Android原生集成友盟SDK
版本:
Android Studio 4.2.1 (以下简称AS)
UMeng 9.4.0 (2021.06.24当天用的版本)
参考文档:开发者中心 (umeng.com)
目前实现了两种办法接入SDK,我们先来看第一种,先下载后接入,也就是官网说的:手动集成。
还有一种是自动集成,是官方推荐的。确实是比手动集成快,可以直接跳到手动集成的下方看如何操作。
一、下载UMeng+的SDK
1、注册友盟+官网账号
官网地址:友盟+,国内领先的第三方全域数据智能服务商 (umeng.com)
2、下载Android的SDK
1、下载的文件进行解压,得到下边四个文件夹。
找1221217469 -> Android -> apm -> apm_android_1.3.1 -> umeng-apm-armeabi-v1.3.1.aar
找1221217469 -> Android -> common -> common_android_9.4.0下的
①:umeng-abtest-v1.0.0.aar
②:umeng-asms-armeabi-v1.2.3.aar
③:umeng-common-9.4.0.jar
2、找到后,放到你工程Moudle下的libs文件夹里,然后引入jar包。
3、导入SDK,并且配置调试
1、接下来我们在工程Moudle的build.gradle下,引入相关文件。并且Sync Now
2、打开我们的AndroidManifest.xml清单文件,并且在里边加入:
<uses-sdk android:minSdkVersion="8"></uses-sdk>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.INTERNET"/>
3、混淆设置
-keep class com.umeng.** {*;}-keepclassmembers class * {public <init> (org.json.JSONObject);
}-keepclassmembers enum * {public static **[] values();public static ** valueOf(java.lang.String);
}//SDK 9.2.4及以上版本自带oaid采集模块,不再需要开发者再手动引用oaid库,所以可以不添加这些混淆
-keep class com.zui.**{*;}
-keep class com.miui.**{*;}
-keep class com.heytap.**{*;}
-keep class a.**{*;}-keep class com.vivo.**{*;}-keep public class 您的应用包名.R$*{
public static final int *;
}
4、初始化代码
package com.test.umengtest;import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import com.umeng.analytics.MobclickAgent;
import com.umeng.commonsdk.UMConfigure;public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); /** *设置组件化的Log开关 *参数: boolean 默认为false,如需查看LOG设置为true */ UMConfigure.setLogEnabled(true); /** * 注意: 即使您已经在AndroidManifest.xml中配置过appkey和channel值,也需要在App代码中调* 用初始化接口(如需要使用AndroidManifest.xml中配置好的appkey和channel值, * UMConfigure.init调用中appkey和channel参数请置为null)。*/UMConfigure.init(getApplicationContext(),"60d30eab8a104826db785a78xxxxxxxxxxxxx", //在UMeng+申请的KEY值"Umeng", //自己定义的渠道名字UMConfigure.DEVICE_TYPE_PHONE,null);/*** 如果选用AUTO页面采集模式 * 那么就不用在onResume与onPause中注册事件了。*/ MobclickAgent.setPageCollectionMode(MobclickAgent.PageMode.AUTO);
}//@Override// public void onResume(){// super.onResume();// MobclickAgent.onResume(this);// }//// @Override// public void onPause(){// super.onPause();// MobclickAgent.onPause(this);// }}
5、打包至真机测试
从Log中可以看到,我们的UMeng初始化成功了。
至此,是不是觉得很快,比别的SDK还要快,那小黑给你带来更快的。
直接通过官方给的链接,自动集成,倍儿快,走着。开发者中心 (umeng.com)
maven自动集成(推荐)
maven自动集成(推荐)
maven自动集成(推荐)
1、AS工程中,主build.gradle配置脚本中添加maven线上依赖,导入最新版本组件化统计SDK。
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript { repositories { google() mavenCentral() jcenter() maven { url 'https://repo1.maven.org/maven2/' } } dependencies { classpath "com.android.tools.build:gradle:4.2.1" classpath 'com.android.tools.build:gradle:3.4.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files }
}allprojects { repositories { google() mavenCentral() jcenter() // Warning: this repository is going to shut down soon maven { url 'https://repo1.maven.org/maven2/' } }
}
task clean(type: Delete) {delete rootProject.buildDir
}
2、在Moudle对应build.gradle配置脚本dependencies段中添加统计SDK库和其它库依赖:
// 下面各SDK根据宿主App是否使用相关业务按需引入。
// 友盟统计SDK
implementation 'com.umeng.umsdk:common:9.4.0'// 必选
implementation 'com.umeng.umsdk:asms:1.2.3'// 必选
implementation 'com.umeng.umsdk:apm:1.3.1' // 错误分析升级为独立SDK,看crash数据请一定集成,可选
implementation 'com.umeng.umsdk:abtest:1.0.0'//使用U-App中ABTest能力,可选
接下来就和上边没什么区别了,直接到上边看步骤就好咯
3、打开我们的AndroidManifest.xml清单文件,并且在里边加入
4、混淆设置
5、初始化代码
6、打包至真机测试
友盟接入完成了,没啥喷的,真的是想让JPush的文档编写者来学习学习,垃圾JPush(手动滑稽)😂。
希望大家:点赞,留言,关注咯~
😘😘😘😘
唠家常
今日分享结束啦,小伙伴们你们get到了么,你们有没有更好的办法呢,可以评论区留言分享,也可以加我QQ:841298494,大家一起进步。
- 客官,看完get之后记得点赞哟!
- 小伙伴你还想要别的知识?好的呀,分享给你们😄
今日推荐
- 博客杂货铺
- GoF23 种设计模式的分类和功能
这篇关于Android原生集成友盟SDK的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!