Unity | 接入BuglySDK(Android端)

  •  获取Bugly SDK:在SDK下载页面下载“Unity Plugin”,在使用指南页面可以获取SDK包相关信息。
  • 将SDK包中的bugly_unity.unitypackage导入进Unity工程,创建以下脚本。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class BuglyScripts : MonoBehaviour {

    private const string BuglyAppIDForiOS = "IOS AppID";

    private const string BuglyAppIDForAndroid = "Android AppID";

    // Use this for initialization
    void Start()
    {
        initBugly();

    }

    private void initBugly()
    {

        BuglyAgent.ConfigDebugMode(true);//如果上架的话需要设置成false
#if UNITY_IPHONE||UNITY_IOS
        BuglyAgent.InitWithAppId(BuglyAppIDForiOS);
#elif UNITY_ANDROID
        BuglyAgent.InitWithAppId(BuglyAppIDForAndroid);
#endif

        BuglyAgent.EnableExceptionHandler();
        Debug.Log("init over");

    }
    private void OnGUI()
    {
        if (GUI.Button(new Rect(100, 100, 100, 50), "数组超范围"))
        {
            Debug.Log("数组超范围");
            byte[] byteArr = new byte[20];
            byteArr[21] = 0x11;
        }
        if (GUI.Button(new Rect(100, 200, 100, 50), "Null"))
        {
            Debug.Log("空指针");
            GameObject obj = null;
            obj.transform.SetParent(this.transform);
        }
    }
}
  • 修改Android工程的AndroidManifest文件:(有以下两种方法)
  1. 在Android Studio中创建项目,生成jar包,注意包名和Unity工程的包名一致。由于我的项目中某些功能需要Android原生开发,所以已经实现了Android与Unity的交互,此时直接修改AndroidManifest文件即可(如果你接入了第三方SDK,Plugins\Android目录下已经有AndroidManifest文件,那么你也可以直接修改)
  2. 将Unity工程发布为可二次开发的项目,用Android Studio打开,修改AndroidManifest文件,再打包成APK即可。

AndroidManifest文件中需要包含以下几个权限的申请:

    <!-- 网络通信-->
    <uses-permission android:name= "android.permission.INTERNET" />
    <!-- 获取网络状态 -->
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <!-- 获取MAC地址-->
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <!-- 获取设备信息 -->
    <uses-permission android:name= "android.permission.READ_PHONE_STATE" /> 
    <!-- 可选的权限: -->
    <!-- 获取logcat日志 -->
    <uses-permission android:name="android.permission.READ_LOGS" />
  • 发布apk后,在手机端运行,点击两个按钮,即可触发异常和崩溃。异常崩溃信息可以在bugly后台看到。

  • 此时虽然可以看到异常信息,但是并不能准确定位异常出现在哪个脚本哪一行,这时可以上传so符号表文件:将生成的apk文件更改后缀为.zip文件,解压后可以在lib\armeabi-v7a下获取这些so文件(注意:我将解压后的文件放到了D:\fcj\bugly\ARProgram0420文件夹下):

  • 下载符号表工具3.0,如下图,我将其解压在了D:\fcj\bugly\Bugly文件夹下:

  • 在命令提示符中输入以下命令:(红色部分:进入符号表工具3.0文件中buglySymbolAndroid.jar所在文件夹下;绿色部分:buglySymbolAndroid.jar文件;蓝色部分:apk解压后so文件所在的文件夹)

 此部分内容可以参考《符号表工具Android版-使用指南.pdf》文档 2.3.1 Debug SO的符号表生成和上传:

  • 上传so符号表文件:可以通过命令进行自动上传,也可以手动上传。我这边选择手动上传:在apk解压后的lib文件夹下,可以看到生成的so符号表文件,将其进行上传即可。

发布了168 篇原创文章 · 获赞 24 · 访问量 9万+

猜你喜欢

转载自blog.csdn.net/weixin_39766005/article/details/105652425
今日推荐