Swift and Objective-C libraries to interact with Flashcat on iOS and tvOS.
This SDK is forked from Datadog iOS SDK and customized for Flashcat Cloud. It provides observability features including Real User Monitoring (RUM), distributed tracing, and crash reporting.
- Endpoint: Data is sent to Flashcat Cloud (
flashcat.cloud) instead of Datadog - Site Configuration: Uses
FlashcatSitewith.cnand.stagingoptions - Naming: Products are renamed (e.g.,
FlashcatCore,FlashcatRUM,FlashcatTrace) - Disabled Modules:
DatadogLogs,DatadogSessionReplay,DatadogFlags,DatadogProfilingare currently not available
| Module | Description |
|---|---|
FlashcatCore |
Core SDK functionality and initialization |
FlashcatRUM |
Real User Monitoring for views, actions, resources, and errors |
FlashcatTrace |
Distributed tracing with OpenTelemetry support |
FlashcatCrashReporting |
Crash detection and reporting |
FlashcatWebViewTracking |
WebView tracking for hybrid mobile applications |
Add the following to your Package.swift:
dependencies: [
.package(url: "https://github.com/flashcatcloud/fc-sdk-ios.git", from: "0.4.0")
]Then add the products you need:
.target(
name: "YourApp",
dependencies: [
.product(name: "FlashcatCore", package: "fc-sdk-ios"),
.product(name: "FlashcatRUM", package: "fc-sdk-ios"),
.product(name: "FlashcatTrace", package: "fc-sdk-ios"),
.product(name: "FlashcatCrashReporting", package: "fc-sdk-ios"),
.product(name: "FlashcatWebViewTracking", package: "fc-sdk-ios"),
]
)Add to your Podfile:
pod 'FlashcatCore'
pod 'FlashcatRUM'
pod 'FlashcatTrace'
pod 'FlashcatCrashReporting'
pod 'FlashcatWebViewTracking'import FlashcatCore
Datadog.initialize(
with: Datadog.Configuration(
clientToken: "<YOUR_CLIENT_TOKEN>",
env: "production",
site: .cn // or .staging
),
trackingConsent: .granted
)import FlashcatRUM
RUM.enable(with: RUM.Configuration(applicationID: "<YOUR_APP_ID>"))import FlashcatTrace
Trace.enable()import FlashcatCrashReporting
CrashReporting.enable()Track web views in hybrid mobile applications:
import FlashcatWebViewTracking
import WebKit
let webView = WKWebView(...)
WebViewTracking.enable(webView: webView)Pull requests are welcome. First, open an issue to discuss what you would like to change. For more information, read the Contributing Guide.
This project is forked from Datadog iOS SDK which is also licensed under Apache 2.0.
This SDK is based on the excellent work of the Datadog team. We are grateful for their open-source contribution.