華為AGC的崩潰服務(wù)支持跨平臺,按照文檔整理了個Xamarin插件集成的文檔,有需要的開發(fā)者可以參考。
環(huán)境配置和項目設(shè)置
- 安裝Xamarin環(huán)境
主要是先安裝visual studio for MAC,然后安裝Mobile development with .NET,具體可以參考??Xamarin環(huán)境搭建??。
- AGC創(chuàng)建項目工程,并且開通華為分析服務(wù)。
這部分是基本操作,可以參見??創(chuàng)建項目???和??開通華為分析??
- 集成AGC Xamarin NuGet包
點擊創(chuàng)建的項目工程,右鍵選擇”Manage NuGet Packages”
選擇對應(yīng)的包后安裝:
繼續(xù)添加HA包,注意需要選擇1.2.0.300版本:
- 添加Json文件到項目目錄下
- 將“Build Action”設(shè)置為“BundleResource”。
- 設(shè)置應(yīng)用包名。
7.配置免費預(yù)配證書 如果沒有申請付費證書,可以使用免費證書,具體參見: https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-get-started-xamarin#h2-1617333170516-2
集成實現(xiàn)
- 布局界面設(shè)計
雙擊main.storyboard拉起Xcode創(chuàng)建3個按鍵“MakeCrash”,” CatchException”,” CustomReport”。
- 代碼調(diào)用
編輯 ViewController.cs 文件, 調(diào)用 AGCCrash.GetSharedInstance.TestIt 制造一次崩潰事件,調(diào)用 AGCCrash.GetSharedInstance.SetUserId 自定義用戶標(biāo)識,調(diào)用 AGCCrash.GetSharedInstance.SetCustomKey 自定義鍵值對,調(diào)用 AGCCrash.GetSharedInstance.Log 自定義日志級別,調(diào)用 AGCCrash.GetSharedInstance. RecordException 產(chǎn)生并記錄一次非嚴(yán)重異常。
using System;
using UIKit;
using Huawei.Agconnect.Crash;
using Foundation;
namespace crashios0512
{
public partial class ViewController : UIViewController
{
public ViewController(IntPtr handle) : base(handle)
{
}
public override void ViewDidLoad()
{
base.ViewDidLoad();
// Perform any additional setup after loading the view, typically from a nib.
}
public override void DidReceiveMemoryWarning()
{
base.DidReceiveMemoryWarning();
// Release any cached data, images, etc that aren't in use.
}
partial void MakeCrash(UIKit.UIButton sender)
{
AGCCrash.GetSharedInstance().TestIt();
}
partial void CatchException(UIKit.UIButton sender)
{
AGCCrash.GetSharedInstance().RecordError(new Foundation.NSError());
}
partial void CustomReport(UIKit.UIButton sender)
{
AGCCrash.GetSharedInstance().SetUserId("testuser");
AGCCrash.GetSharedInstance().Log("default info level");
AGCCrash.GetSharedInstance().SetCustomValue(new NSString("test"), "this is string value");
AGCCrash.GetSharedInstance().LogWithLevel(AGCCrashLogLevel.Warning, "this is warning log level");
AGCCrash.GetSharedInstance().SetCustomValue(new NSNumber(123), "this is number");
}
}
崩潰報告查看
集成完后點擊按鍵制造崩潰和非嚴(yán)重異常,并產(chǎn)生自定義報告,可以在AGC頁面查看
- 崩潰概覽
- 問題概覽
- 查看崩潰詳情堆棧
- 查看自定義鍵值對
- 查看自定義日志級別
- 查看自定義用戶標(biāo)識
欲了解更多詳情,請參見:
1、華為AGC 崩潰服務(wù)文檔:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-crash-introduction
2、華為AGC-崩潰服務(wù)codelab:https://developer.huawei.com/consumer/cn/codelabsPortal/carddetails/CrashService-iOS
本文摘自 :https://blog.51cto.com/u