友盟(软件异常实时监听的好帮手:Crash)接入教程
这次的接入和上次的XBanner有所不同(多了个buildscript的操作),请耐心阅读
混淆等操作就不演示了,现在还不会,下次再发
本次使用的文档:https://developer.umeng.com/docs/119267/detail/118584
注册友盟账户
个人中心添加应用(方法很多)
填写应用信息,这些产品选这几个就够用了
添加个图标以便于友盟上传应用图标使用(自己找个图就行了)
这里推荐阿里icon图标库:https://www.iconfont.cn/
自取
创建工程,并替换应用图标
命名为app.png自动替换()
添加Maven和依赖
这个链接(添加应用后推荐的文档)就不发了,用上面的文档就行
重点是这个!!!(小白请关注这里)这里其实有两块配置代码(分开如下)
build.gradle代码
buildscript {
repositories {
google()
jcenter()
maven { url 'https://repo1.maven.org/maven2/' }
}
dependencies {
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
}
}
maven库代码
老规矩,这玩意儿需要添加到总项目
的settings.gradle
里使用(重复的自己删除)
allprojects {
repositories {
google()
jcenter()
maven { url 'https://repo1.maven.org/maven2/' }
}
}
添加依赖
(
不同点
出现了哦!!!)这里是工程 build.gradle
要注意,是app目录下
的,不是整个项目里的(而且AS规定buildscript必须在plugins前使用(添加)!!!!!
)
// 友盟统计SDK
implementation 'com.umeng.umsdk:common:9.4.7'// 必选
implementation 'com.umeng.umsdk:asms:1.4.1'// 必选
implementation 'com.umeng.umsdk:apm:1.5.2' // 错误分析升级为独立SDK,看crash数据请一定集成,可选
创建全局变量APP类(Aplication)
APP.java
初始化友盟
Channel名遵循规则,随便起,两处保持一致
下面的代码里我添加了注释
import android.app.Application;
import com.umeng.commonsdk.UMConfigure;
public class APP extends Application {
@Override
public void onCreate() {
super.onCreate();
//设置LOG开关,默认为false
UMConfigure.setLogEnabled(true);
/* Channel渠道的命名规范
可以由英文字母、阿拉伯数字、下划线、中划线、空格、括号组成,可以含汉字以及其他明文字符,但是不建议使用中文命名,会出现乱码。
首尾字符不可以为空格。
不要使用纯数字作为渠道ID。
最多256个字符。
“unknown” 及其各种大小写形式,作为【友盟+】保留的字段,不可以作为渠道名。*/
//友盟预初始化
UMConfigure.preInit(getApplicationContext(), "你的appkey", "Umeng");//这里的Umeng随便起,和下面一致就行
//友盟真正初始化
UMConfigure.init(this, "你的appkey", "Umeng", UMConfigure.DEVICE_TYPE_PHONE, "");
}
}
配置权限和全局应用(APP类)
<!--权限-->
<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" />
...
<!--全局变量类,这个也要配置哦-->
android:name=".APP"
添加意图过滤(intent-filter),并填写你的appkey
<intent-filter>
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:scheme="um.该app对应的appkey" />
</intent-filter>
再次查找appkey的方法
这里多谢:柯凡同学爱编程(B站用户,IU浏览器的开发者哦),然后我才很快的找到,哈哈哈
友盟官网>个人中心>点击上方的管理即可(我的码就不给大家看了,嘻嘻,你们看自己的就行)
MainActivity.java文件的配置
(来!自己写个Bug测试一下,没想到啊还有自己专门写Bug的一天,哈哈哈哈)
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
private int aA =1;//定义一个假的变量
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//这里一定要有try...catch(捕获异常)不然还没等友盟上传你软件就崩了!!!!!!!!!!
try {
Button c = findViewById(aA);//获取假的id
c.setText(55);//调用一些下不然不会报错
}catch (Exception e){
}
}
@Override
protected void onStart() {
super.onStart();
Log.e("测试","据说这玩意儿不算错误");
}
来看一下效果
运行后你AS的Run里面会出现的内容,自己看吧
此时的软件
此时的友盟后台
个人中心>管理>点击你添加的应用
点这个
首次进入需要开通实时监控功能,自己点击开通就是了(因为我忘记截图了,所以就不发图了,哈哈哈),如果刚开通后没有错误,你就再运行一下你的APP,就会有了
下滑就可以查看了
OK了
小提示:这次的官方文档里有用AS上方工具栏添加maven库的方法
so文件是用来适配不同设备用的,想学的可以自取
图片是自己一张张添加的,引用请说明
大哥!来吧!动手吧!我不拦着您点赞!嘻嘻~