Android如何快速集成腾讯Bugly
作者:BAI 时间:2021-11-26 00:52:26
目录
1. 新建产品,在官网新建产品
2. 获取app id,点击产品设置,拿到App ID
3. 集成SDK,在Android项目的 app/build.gradle 文件中自动集成SDK
4. AndroidMainfest.xml配置,在 AndroidMainfest.xml 中进行以下配置:
5. 混淆配置,在proguard-rules.pro文件中加入
6. 初始化Bugly
7. 接入完成
腾讯Bugly官方网址bugly.qq.com/
Bugly官方文档bugly.qq.com/docs/
应用升级 SDK 高级配置bugly.qq.com/docs/user-g…
这篇文章把官方文档化繁为简,在Android中快速接入bugly的异常上报和应用更新。
1. 新建产品,在官网新建产品
2. 获取app id,点击产品设置,拿到App ID
3. 集成SDK,在Android项目的 app/build.gradle 文件中自动集成SDK
android {
defaultConfig {
ndk {
// 设置支持的SO库架构
abiFilters 'armeabi' , 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
}
}
}
dependencies {
//bugly Java Crash捕获和应用升级功能
implementation 'com.tencent.bugly:crashreport_upgrade:1.4.2'
//bugly Native Crash捕获
implementation 'com.tencent.bugly:nativecrashreport:3.7.1'
}
4. AndroidMainfest.xml配置,在 AndroidMainfest.xml 中进行以下配置:
权限配置
注意:如果您的App需要上传到google play store,您需要将READ_PHONE_STATE权限屏蔽掉或者移除,否则可能会被下架。
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<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_LOGS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
Activity配置 和 FileProvider配置
注意:如果您想兼容Android N或者以上的设备,必须要在AndroidManifest.xml文件中配置FileProvider来访问共享路径的文件。
<activity
android:name="com.tencent.bugly.beta.ui.BetaActivity"
android:configChanges="keyboardHidden|orientation|screenSize|locale"
android:theme="@android:style/Theme.Translucent" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.fileProvider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provider_paths"/>
</provider>
在res目录新建xml文件夹,创建 provider_paths.xml 文件,文件内容如下:
<?xml version="1.0" encoding="utf-8"?>
<paths xmlns:android="http://schemas.android.com/apk/res/android">
<external-path name="beta_external_path" path="Download/"/>
<external-path name="beta_external_files_path" path="Android/data/"/>
</paths>
5. 混淆配置,在proguard-rules.pro文件中加入
如果您的项目开启了代码混淆,请在 proguard-rules.pro文件 添加以下内容,如果未开启混淆请忽略这一步。
-dontwarn com.tencent.bugly.**
-keep public class com.tencent.bugly.**{*;}
-keep class android.support.**{*;}
6. 初始化Bugly
注意:如果您的项目已经有 自定义Application文件,请直接在 onCreate方法 添加代码:Bugly.init(getApplicationContext(), "第2步获取的AppID", false);
新建 一个 MyApp.java,里面的内容为以下代码:
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
Bugly.init(getApplicationContext(), "第2步获取的AppID", false);
}
}
在 AndroidManifest.xml文件 的 application标签 中新增属性:android:name=".MyApp"
7. 接入完成
现在您可以制造一个Crash(建议通过“按键”来触发),来体验Bugly的能力了。
在初始化Bugly的之后,可以调用Bugly的Java Crash接口。
测试代码 : CrashReport.testJavaCrash();
执行到这段代码时会发生一个Crash
来源:https://juejin.cn/post/6953882035014336543