本文只为Android方面提供讲解
何为bugly
腾讯Bugly,为移动开发者提供专业的异常上报和运营统计,帮助开发者快速发现并解决异常,同时掌握产品运营动态,及时跟进用户反馈。还可以通过bugly的更新组件,提供自动检查更新和应用下发。
需要用到的
Android开发工具(我使用的是Android studio)
开始集成
- 首先打开你需要集成bugly的项目,也可以新建一个TestDemo。
- 打开项目路径
app/build.gradle
,进行一些操作。
- 添加导入仓库。
至于这个仓库版本,你可以去bugly的官网]查看最新版本号。
dependencies {
***
//bugly
implementation 'com.tencent.bugly:crashreport_upgrade:1.4.2'//版本号可以去官网查看
implementation 'com.tencent.bugly:nativecrashreport:3.7.1'//版本号可以去官网查看
}
- 设置ndk兼容架构
android {
***
defaultConfig {
//ndk支持架构
ndk {
//设置支持的SO库架构。在集成Bugly SO库时,请注意只保留支持的架构SO库。
abiFilters 'armeabi' , 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
}
}
}
Bugly初始化
- 为你的项目新建一个
MyApplication
类,并且继承Application
。
如果你有这个类,那就直接写代码吧
- Application类代码示例
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
/*
//更新 自定义初始化
Beta.autoInit = true;
//自定义 通知栏小图标
Beta.smallIconId = R.drawable.update1;
*/
//bugly初始化
Bugly.init(getApplicationContext(), "在bugly官网申请你的应用的APPID", false);
}
}
- 在
AndroidMainfest.xml
中进行以下配置:
- Application配置
<!--把name属性填写成你的Application类名,注意类名前边要加点-->
<application
android:name=".你的Application类名">
<!--这里我就省略了-->
</application>
- 权限配置
<!--如果想在Google play发布,你需要移除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配置
添加更新弹窗的活动
<activity
android:name="com.tencent.bugly.beta.ui.BetaActivity"
android:configChanges="keyboardHidden|orientation|screenSize|locale"
android:theme="@android:style/Theme.Translucent" />
- 配置FileProvider
如果您想兼容Android N或者以上的设备,必须要在AndroidManifest.xml文件中配置FileProvider来访问共享路径的文件。
这里要注意一下,FileProvider类是在support-v4或androidx包中的
,检查你的工程是否引入该类库。
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="你的应用包名.fileProvider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/provider_paths"/>
</provider>
- xml/provider_paths的编写
<?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>
开始测试
//在app里调用这句可以测试Java崩溃异常,其他异常测试方法请看图
//如果崩溃了,那就是成功了。
CrashReport.testJavaCrash();
结束语
关于bugly如何更新应用,我会在以后的文章中进行解释。
网友评论