Bugly se conecta para implementar informes de excepciones en línea y envía información de excepciones a los desarrolladores en tiempo real a través de WeChat.

Uno de los requisitos de proyectos recientes es contar la información anormal de la aplicación, y la información anormal debe notificarse al desarrollador en tiempo real, para que el desarrollador pueda captar la excepción en línea la primera vez y encontrar el problema en de manera oportuna en función de la anormalidad reportada por el cliente y posteriormente, a través del HotFix de Alibaba Cloud, realiza reparaciones oportunas en línea. Actualmente, las plataformas móviles de terceros más utilizadas en el mercado para el seguimiento de la calidad incluyen Umeng, Bugly, NetEase Cloud Capture y crashlytics. Entre ellos, los tres primeros son terceros para estadísticas de anomalías nacionales. Los desarrolladores nacionales utilizan más los tres primeros. Actualmente, he utilizado personalmente Umeng y Bugly. Ambos son de muy fácil acceso y proporcionan estadísticas de anomalías en segundo plano. Es todo muy claro.

Primero, echemos un vistazo al acceso de Bugly:

Registrar producto

  • Acceso

Utilice QQ para iniciar sesión en el sitio web oficial de Bugly

texto alternativo

  • Mejorar la información del desarrollador

Complete la información del desarrollador antes de crear el producto: complete el correo electrónico, el ID de WeChat y el número de teléfono móvil según sea necesario para que pueda recibir actualizaciones del producto a tiempo y también nos facilita mantenernos en contacto con los desarrolladores en cualquier momento. .

texto alternativo

  • Crear aplicación

Agregue el nombre de la aplicación, seleccione la plataforma de la aplicación, el tipo de producto, el ícono del producto y la información de descripción según sea necesario.

texto alternativo

Después de guardar, se creará correctamente.

texto alternativo

Introducción a las funciones de la plataforma.

Una vez que la aplicación integre el SDK, podrá ver los datos de fallas y los datos de red informados por la aplicación en el sitio web.

Informes anormales

  • 异常概览Vea las estadísticas actuales en tiempo real, las tendencias de accidentes, las clasificaciones de accidentes y los 20 principales problemas de accidentes y otra información.

texto alternativo

texto alternativo

  • 崩溃分析/卡顿分析/错误分析Ver una lista de problemas reportados

texto alternativo

  • 问题详情Ver detalles de los problemas reportados

texto alternativo

texto alternativo

  • 高级搜索Encuentre rápidamente anomalías que deben localizarse y analizarse en diversas condiciones

texto alternativo

Importación de archivos de biblioteca

Bugly admite la integración automática y la integración manual. Si usa Gradle para compilar el Apk, se recomienda encarecidamente que utilice el método de acceso automático para configurar el archivo de la biblioteca.

 

Integre SDK y NDK simultáneamente

Agregue dependencias y configuraciones de propiedades en el archivo build.gradle del módulo:

android {
    defaultConfig {
        ndk {
            // 设置支持的SO库架构
            abiFilters 'armeabi' //, 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
        }
    }
}

dependencies {
    compile 'com.tencent.bugly:crashreport:latest.release' //其中latest.release指代最新Bugly SDK版本号,也可以指定明确的版本号,例如2.1.9
    compile 'com.tencent.bugly:nativecrashreport:latest.release' //其中latest.release指代最新Bugly NDK版本号,也可以指定明确的版本号,例如3.0
}

La configuración para integrar Bugly SDK y NDK al mismo tiempo se muestra en la siguiente figura. Al actualizar Bugly SDK y NDK más adelante, solo necesita cambiar el número de versión en el script de configuración.

texto alternativo

注意:自动集成时会自动包含Bugly SO库,建议在Module的build.gradle文件中使用NDK的“abiFilter”配置,设置支持的SO库架构。

Si Android Studio muestra el siguiente mensaje después de agregar "abiFilter" :

NDK integration is deprecated in the current plugin. Consider trying the new experimental plugin.

Luego agregue: en el archivo gradle.properties en el directorio raíz del proyecto :

android.useDeprecatedNdk=true

Configuración de parámetros

  • Agregue permisos en AndroidManifest.xml:
<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" />

Nota: Si es necesario cargar su aplicación en google play store, debe READ_PHONE_STATEbloquear o eliminar permisos; de lo contrario, es posible que se elimine.

  • Evite confundir Bugly agregando la siguiente configuración al archivo de ofuscación de Proguard:
-dontwarn com.tencent.bugly.**
-keep public class com.tencent.bugly.**{*;}

La inicialización más simple

Obtenga el ID de la aplicación y copie el siguiente código en la clase de aplicación del proyecto onCreate(). Bugly detectará automáticamente el entorno y completará la configuración:

CrashReport.initCrashReport(getApplicationContext(), "注册时申请的APPID", false); 

为了保证运营数据的准确性,建议不要在异步线程初始化Bugly。

El tercer parámetro es el interruptor del modo de depuración del SDK. Las características de comportamiento del modo de depuración son las siguientes:

  • Salida del registro detallado del SDK de Bugly;
  • Cada falla se informará de inmediato;
  • Los registros personalizados se generarán en Logcat.

Se recomienda establecerlo en verdadero durante la fase de prueba y en falso durante el lanzamiento .

texto alternativo

Además, Bugly2.0 y superiores también admiten la configuración de información de la aplicación a través de "AndroidManifest.xml". Si la información de la APLICACIÓN se configura en el código al mismo tiempo, la información configurada en el código prevalecerá en última instancia.

Agregue el elemento de configuración "metadatos" en la "Aplicación" de "AndroidManifest.xml":

<application
    <!-- 配置APP ID -->
    <meta-data
            android:name="BUGLY_APPID"
            android:value="<APP_ID>" />
    <!-- 配置APP版本号 -->
    <meta-data
            android:name="BUGLY_APP_VERSION"
            android:value="<APP_Version>" />
    <!-- 配置APP渠道号 -->
    <meta-data
            android:name="BUGLY_APP_CHANNEL"
            android:value="<APP_Channel>" />
    <!-- 配置Bugly调试模式(true或者false)-->
    <meta-data
            android:name="BUGLY_ENABLE_DEBUG"
            android:value="<isDebug>" />
</application>

不同于“android:versionName”,“BUGLY_APP_VERSION”配置的是Bugly平台的APP版本号。

El método de inicialización después de la configuración a través de "AndroidManifest.xml" es el siguiente:

CrashReport.initCrashReport(getApplicationContext());

Bugly lee "VersionName" del archivo "AndroidManifest.xml" como número de versión de forma predeterminada.

 

Notas MultiDex

Si se utiliza MultiDex, se recomienda multiDexKeepFilecolocar la clase Bugly en el Dex principal a través de la " " configuración de Gradle, etc. También se recomienda cargar activamente el dex no principal en Applicationel método " " de la clase :attachBaseContext

public class MyApplication extends SomeOtherApplication {
  @Override
  protected void attachBaseContext(Context base) {
     super.attachBaseContext(context);
     Multidex.install(this);
  }
}

 Lo anterior es el acceso a Bugly. Podemos escribir un error para hacer que el programa falle y podemos ver la información de error específica en el análisis de fallos de Bugly en aproximadamente un minuto. Entonces, ¿qué debemos hacer si queremos enviar esta información sobre fallas a los desarrolladores en tiempo real? Bugly proporciona una característica como se muestra en la figura:

Después de vincular WeChat aquí, Bugly contará las excepciones dentro de una hora y las enviará a la persona que vincula al usuario. Lo anterior es el proceso de informe de estadísticas de excepciones y acceso de Bugly. Si no lo comprende, puede dejarme un comentario. .

Supongo que te gusta

Origin blog.csdn.net/weitao_666/article/details/97920161
Recomendado
Clasificación