当前位置:首页 > IT技术 > 移动平台 > 正文

零代码快速集成AGC崩溃服务-xamarin框架-iOS
2021-12-13 17:54:28

华为AGC的崩溃服务支持跨平台,按照文档整理了个Xamarin插件集成的文档,有需要的开发者可以参考。

环境配置和项目设置


  1. 安装Xamarin环境

主要是先安装visual studio for MAC,然后安装Mobile development with .NET,具体可以参考​​Xamarin环境搭建​​。

零代码快速集成AGC崩溃服务-xamarin框架-iOS_自定义

  1. AGC创建项目工程,并且开通华为分析服务。

这部分是基本操作,可以参见​​创建项目​​​和​​开通华为分析​

  1. 集成AGC Xamarin NuGet包

点击创建的项目工程,右键选择”Manage NuGet Packages”

零代码快速集成AGC崩溃服务-xamarin框架-iOS_ide_02

选择对应的包后安装:

零代码快速集成AGC崩溃服务-xamarin框架-iOS_自定义_03

继续添加HA包,注意需要选择1.2.0.300版本:

零代码快速集成AGC崩溃服务-xamarin框架-iOS_ide_04

  1. 添加Json文件到项目目录下

零代码快速集成AGC崩溃服务-xamarin框架-iOS_自定义_05

  1. 将“Build Action”设置为“BundleResource”。

零代码快速集成AGC崩溃服务-xamarin框架-iOS_自定义_06

  1. 设置应用包名。

零代码快速集成AGC崩溃服务-xamarin框架-iOS_自定义_07

7.配置免费预配证书 如果没有申请付费证书,可以使用免费证书,具体参见: https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-get-started-xamarin#h2-1617333170516-2

集成实现


  1. 布局界面设计

双击main.storyboard拉起Xcode创建3个按键“MakeCrash”,” CatchException”,” CustomReport”。

零代码快速集成AGC崩溃服务-xamarin框架-iOS_自定义_08

  1. 代码调用

编辑 ViewController.cs 文件, 调用 AGCCrash.GetSharedInstance.TestIt 制造一次崩溃事件,调用 AGCCrash.GetSharedInstance.SetUserId 自定义用户标识,调用 AGCCrash.GetSharedInstance.SetCustomKey 自定义键值对,调用 AGCCrash.GetSharedInstance.Log 自定义日志级别,调用 AGCCrash.GetSharedInstance. RecordException 产生并记录一次非严重异常。

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");

}
}

崩溃报告查看


集成完后点击按键制造崩溃和非严重异常,并产生自定义报告,可以在AGC页面查看

  1. 崩溃概览

零代码快速集成AGC崩溃服务-xamarin框架-iOS_创建项目_09

  1. 问题概览

零代码快速集成AGC崩溃服务-xamarin框架-iOS_自定义_10

  1. 查看崩溃详情堆栈

零代码快速集成AGC崩溃服务-xamarin框架-iOS_创建项目_11

  1. 查看自定义键值对

零代码快速集成AGC崩溃服务-xamarin框架-iOS_创建项目_12

  1. 查看自定义日志级别

零代码快速集成AGC崩溃服务-xamarin框架-iOS_自定义_13

  1. 查看自定义用户标识

零代码快速集成AGC崩溃服务-xamarin框架-iOS_ide_14

欲了解更多详情,请参见:

1、华为AGC 崩溃服务文档:https://developer.huawei.com/consumer/cn/doc/development/AppGallery-connect-Guides/agc-crash-introduction

2、华为AGC-崩溃服务codelab:https://developer.huawei.com/consumer/cn/codelabsPortal/carddetails/CrashService-iOS

本文摘自 :https://blog.51cto.com/u