1. 程式人生 > >IOS中使用騰訊Bugly

IOS中使用騰訊Bugly

前言:
最近專案打包分發給客服部門測試,有反饋說在iPhone 7,系統10.1中點選登入之後會有crash的問題,但是我們手上的手機沒有問題。又不能把人家的手機拿過來除錯,而且可能會有隱藏的crash,平時在測試過程中沒有測試出來,又或者是不易復現的bug,於是乎就想到新增錯誤記錄日誌~~~

1、只需要QQ號就可以申請賬號了
2、新建產品
這裡寫圖片描述
之前我已經新建一個專案了。
3、填寫相關資訊
這裡寫圖片描述

儲存之後就可以獲取APP ID、 APP Key

這裡寫圖片描述

4、下載相關的demo,匯入相關檔案,文件寫的很清楚。基本設定頁很簡單。可根據官方文件設定

這裡寫圖片描述

5、在AppDelegate.m中匯入

#import <Bugly/Bugly.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    [Bugly startWithAppId:BUGLY_APP_ID];
//    [self setupBugly];
    return YES;
}

在ViewController.m寫一個簡單點的點選按鈕會crash的程式碼。

- (void)viewDidLoad {
    [super
viewDidLoad]; //沒有實現按鈕的點選事件 UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 100, 30)]; btn.backgroundColor = [UIColor redColor]; [btn addTarget:self action:@selector(onClick1) forControlEvents:UIControlEventTouchUpInside]; [self.view addSubview:btn]; }

6、在模擬器執行之後,點選按鈕,看下Bugly中會有什麼展示資訊
這裡寫圖片描述

7、在異常報告的奔潰分析中,可以看到crash的原因,點選進去還可以檢視詳情,能看到相關的解決方案,和一些crash時系統運行了哪些方法,相關的手機資訊等。

解決方案:
這裡寫圖片描述

相關的手機資訊:
這裡寫圖片描述

堆疊資訊:
這裡寫圖片描述

8、也可以自定義bugly的相關設定

- (void)setupBugly {

    BuglyConfig * config = [[BuglyConfig alloc] init];
//    非正常退出事件(SIGKILL)
    config.unexpectedTerminatingDetectionEnable = YES;

    // Open the debug mode to print the sdk log message.
    // Default value is NO, please DISABLE it in your RELEASE version.
    //上傳時改為NO
#if DEBUG
    config.debugMode = YES;//開啟SDK日誌
#endif

    config.reportLogLevel = BuglyLogLevelWarn;

    //卡頓監控
    config.blockMonitorEnable = YES;

    // Set the STUCK THRESHOLD time, when STUCK time > THRESHOLD it will record an event and report data when the app launched next time.
    // Default value is 3.5 second.
    config.blockMonitorTimeout = 1.5;

    //渠道標識
    config.channel = @"Yuna";

    config.delegate = self;
    //程序內還原符號
    config.symbolicateInProcessEnable = YES;

    // NOTE:Required
    // Start the Bugly sdk with APP_ID and your config
    [Bugly startWithAppId:BUGLY_APP_ID
#if DEBUG
        developmentDevice:YES
#endif
                   config:config];

    // Set the customizd tag thats config in your APP registerd on the  bugly.qq.com
    // [Bugly setTag:1799];

    [Bugly setUserIdentifier:[NSString stringWithFormat:@"User: %@", [UIDevice currentDevice].name]];

    //+(NSProcessInfo*)processInfo  //返回當前程序的資訊
    //-(NSString*)processName  //返回當前正在執行的程序名稱
    [Bugly setUserValue:[NSProcessInfo processInfo].processName forKey:@"Process"];

}

在AppDelegate.m中呼叫自定義的Bugly配置,不用系統自帶的。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    //[Bugly startWithAppId:BUGLY_APP_ID];
    [self setupBugly];
    return YES;
}

注意:
我之前測試的時候,在Bugly中看不到crash的日誌,主要要確保bugly的初始化要在你crash程式碼之前。相關常見問題見官方文件

相關推薦

iOS 開發 bugly(上線後崩潰追蹤)整合指南--2106最新版

iOS 開發 騰訊bugly(上線後崩潰追蹤)整合指南–2106最新版 首先要去騰訊開放平臺註冊APP 獲取appid 和appkey cocoapods整合 1.Podfile檔案 ## platform :ios, ‘8.0’

iOS 利用 Bugly 程式除錯 測試程式碼bug 卡頓等情況

1.自己先寫一個 Demo 演示一下利用bugly測試崩潰的具體情況。 在ViewController裡面實現崩潰程式碼如下: 執行後 毫無疑問程式報錯了! 2.使用到第三方的框架Bugly,官方下載bugly 3.進入後利用qq註冊一下,完

IOS使用Bugly

前言: 最近專案打包分發給客服部門測試,有反饋說在iPhone 7,系統10.1中點選登入之後會有crash的問題,但是我們手上的手機沒有問題。又不能把人家的手機拿過來除錯,而且可能會有隱藏的crash,平時在測試過程中沒有測試出來,又或者是不易復現的bug,

Android最簡單的整合Bugly

專案中使用到整合騰訊的Bugly方便應用的版本管理,崩潰日誌的檢視和熱更新的應用,研究了一下寫出來了: 庫檔案匯入 Bugly支援自動整合和手動整合兩種方式,如果您使用Gradle編譯Apk,我們強烈推薦您使用自動接入方式配置庫檔案。 自動整合(推薦) Bugly支援JCenter倉

iOS新增bugly出現問題Framework not found IOSurface for architecture arm64

Framework not found IOSurface for architecture arm64原因:Xcode版本太低,Xcode9以下版本缺少 IOSurface.framework、FileProvider.framework解決方案:1.升級Xcode2.緊急解決方案:在安裝Xcode9的MA

整合Bugly日誌收集接入詳細步驟和錯誤解決方案-- IOS

一、登入BUGLY官網1、登入BUGLY官網以後,選擇新建產品,選擇IOS或ADNROID平臺,如圖: 完事以後點選儲存,點選當前專案檢視詳細資訊: 主要有:異常上報(異常概覽、崩潰分析、卡頓分析、高階搜尋、異常配置)、運營統計(運營概覽、使用者分析、渠道分析)、應用升級 2

Bugly乾貨分享】iOS黑客技術大揭祕

“8小時內拼工作,8小時外拼成長”這是大家共同的理想。除了每天忙於工作外,我們都希望能更多地區吸收領域內的新知識與新技能,從而走向人生巔峰。 Dev Club 是一個交流移動開發技術,結交朋友,擴充套件人脈的社群,成員都是經過稽核的移動開發工程師。每週都會

bugly幹貨分享】精神哥手把手教你怎樣智鬥ANR

waiting pen nag 技術分享 input 這就是 max-width 卡死 gravity 上帝說要有ANR,於是Bugly就有了ANR上報。那麽ANR究竟是什麽? 近期非常多童鞋問起精神哥ANR的問題,那麽這次就來聊一下,雞爪怎麽泡才好吃。噢不,是怎

iOS 使用地圖顯示用戶位置註意事項

nag rgb system current info cti iap level zoom 1. 向 target中info 加入 NSLocationWhenInUseUsageDescription,string 類型。值是描寫敘述為什麽須要用

Android Bugly——異常上報和應用更新

schema err hidden eno xmlns 哈哈 map ant export 騰訊Bugly,為移動開發者提供專業的異常上報和運營統計,幫助開發者快速發現並解決異常,同時掌握產品運營動態,及時跟進用戶反饋。 首先Bugly有兩大優點,免費,不用審核 使用步驟如

Android Bugly 熱更新

nor 現在 oar rri filter ble 實施 2.2.0 armeabi 這個是一位大佬教我的,我自己照著做寫博客 熱更新雖然看起來很復雜,但是Bugly通過集成,使得這個過程很簡單。我這裏不涉及多渠道熱更新,只講述最簡單的情況。 1.首先我們需要在Bugly上

Bugly熱更新整合以及問題

ClassLoader 我們知道Java在執行時載入對應的類是通過ClassLoader來實現的,ClassLoader本身是一個抽象來,Android中使用PathClassLoader類作為Android的預設的類載入器,  PathClassLoader其實實現的就是簡單的從檔案

Android bugly的學習使用

轉載:https://www.jianshu.com/p/7984b3ee7880 前序:一般一個專案的開發,從需求調研到開發完成正式上線必須要經歷修改bug,修改bug,修改bug 的死迴圈中,而往往一些專案在上線之後由於測試人員沒有測試出一些偶發概率的bug,這就導致使用者在下載使用App的

Android Bugly熱更新接入(Kotlin語言)

Android 騰訊Bugly熱更新接入(Kotlin語言) 簡介 一、新增外掛依賴 二、gradle配置 三、新建tinker-support.gradle 四、初始化SDK 五、AndroidManifest.xml配置 六、混淆

Bugly乾貨分享】Android程序保活招式大全

【騰訊Bugly乾貨分享】Android程序保活招式大全 本文來自於騰訊bugly開發者社群,非經作者同意,請勿轉載,原文地址:http://dev.qq.com/topic/57ac4a0ea374c75371c08ce8 作者:騰訊——張興華 目前市面上的應用,貌似除了微信和手Q都會

Bugly異常崩潰SDK接入

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px "Yuanti SC" } 首先登入Bugly,建立應用,記錄下AppId ①下載SDK,通過Cocoapods整合 pod 'Bugly'

簡單的二維碼載入預設二維碼掃碼介面 + Bugly基本操作

MainActivity package com.qrcode.qr; import android.content.Intent; import android.graphics.Bitmap; import android.graphics.BitmapF

Bugly乾貨分享】移動網際網路測試到質量的轉變

Dev Club 是一個交流移動開發技術,結交朋友,擴充套件人脈的社群,成員都是經過稽核的移動開發工程師。每週都會舉行嘉賓分享,話題討論等活動。 本期,我們邀請了 TesterHome 測試技術社群聯合創始人“陳曄”,為大家分享《移動網際網路測試到質量的轉

bugly 的crash 上報和umeng的比較(crash監測工具對比,bugly勝)

說到crash上傳工具,大家肯定會第一時間想到umeng,不錯,umeng 是最早推出 crash 上報的工具之一,在剛推出來的時候,特別受到ios開發人員的喜愛。      因為個時候,記憶體是手動管理的,很容易發生重複是釋放記憶體導致crash,所以umeng的這個工具能夠上傳已經發布的產品的crash

bugly的熱修復功能整合筆記

首先我們從整體比較目前市面上常用的幾種Android App 熱修復方案: bugly熱更新功能集成了Tinker熱修復框架,引用騰訊bugly官網的一段話: 無需關注Tinker是如何合成補丁的無需自己搭建補丁管理後臺無需考慮後臺下發補丁策略的任何事情無需考慮補丁