Honeybadger 1.0.1

Honeybadger 1.0.1

Andrey ButovJoshua WoodBenjamin Curtis 维护。



  • Andrey Butov

Honeybadger for iOS and MacOS

用于将 Honeybadger 集成到您的 iOS 和 MacOS 应用程序中的 SDK。此 SDK 可以用于 Swift 和 Objective-C 项目。

安装

SwiftPM compatible CocoaPods compatible

CocoaPods

要通过 CocoaPods 安装,请创建/打开您的 Pods 文件,然后为 'Honeybadger' 添加一个 pod 条目。请确保指定 use_frameworks!

use_frameworks!

target 'MyApp' do
	pod 'Honeybadger'
end

Swift 包管理器

在 Xcode 中打开您的应用程序,然后转到 文件 > Swift 包 > 添加包依赖项,并在 Honeybadger Cocoa GitHub 仓库中指定: https://github.com/honeybadger-io/honeybadger-cocoa

初始化

您需要您的 Honeybadger API 密钥才能初始化 Honeybadger 库。您可以登录您的 Honeybadger 账户以获取您的 API 密钥。

在您的 App Delegate 中,导入 Honeybadger 库

Swift

import Honeybadger

Objective-C

@import Honeybadger;

在您的 didFinishLaunchingWithOptions 方法中,添加以下代码来初始化 Honeybadger

Swift

Honeybadger.configure(apiKey:"{{PROJECT_API_KEY}}")

Objective-C

[Honeybadger configureWithAPIKey:@"{{PROJECT_API_KEY}}"];

使用示例

错误和异常会被Honeybadger库自动处理,但您也可以使用以下API来自定义应用程序中的错误处理。

notify

您可以使用 notify 方法手动发送一个错误作为字符串或Error/NSError对象。如果可用,Honeybadger库将尝试提取堆栈跟踪和任何可能有用相关信息。您还可以可选地提供 上下文,包括关于错误的相关信息。

Swift

Honeybadger.notify(
	errorString: "My error"
);

Honeybadger.notify(
	errorString: "My error", 
	context: ["user_id" : "123abc"]
);

Honeybadger.notify(
	error: MyError("This is my custom error.")
);

Honeybadger.notify(
	error: MyError("This is my custom error."), 
	context: ["user_id" : "123abc"]
);

Objective-C

[Honeybadger notifyWithString:@"My error"];

[Honeybadger 
	notifyWithString:@"My error" 
	context:@{ @"user_id" : @"123abc" }
];

[Honeybadger notifyWithError:
	[[NSError alloc] initWithDomain:@"my.test.error" code:-1 userInfo: @{}]
];

[Honeybadger 
	notifyWithError:[[NSError alloc] initWithDomain:@"my.test.error" code:-1 userInfo: @{}]
	context:@{ @"user_id" : @"123abc" }
];

setContext

如果您希望在发生错误或异常时包含数据,您可以使用setContext方法提供数据。您可以根据需要多次调用setContext。新的上下文数据将与之前设置的任何上下文数据合并。

Swift

Honeybadger.setContext(context: ["user_id" : "123abc"]);

Objective-C

[Honeybadger setContext:@{@"user_id" : @"123abc"}];

resetContext

如果您已经使用setContext存储了数据,您可以使用resetContext来清除这些数据。

Swift

Honeybadger.resetContext();

Objective-C

[Honeybadger setContext];

许可证

Honeybadger iOS/MacOS SDK 采用了 MIT 许可协议。请参阅本存储库中的 LICENSE 文件以获取详细信息。