feat: add Sentry error tracking and Expo Updates
This commit is contained in:
@@ -4,6 +4,15 @@ module.exports = (config) => ({
|
||||
type: "watch",
|
||||
icon: "../../assets/icon.png",
|
||||
deploymentTarget: "10.0",
|
||||
frameworks: ["SwiftUI"],
|
||||
swiftPackages: [
|
||||
{
|
||||
name: "SentrySPM",
|
||||
repositoryURL: "https://github.com/getsentry/sentry-cocoa.git",
|
||||
kind: "upToNextMajorVersion",
|
||||
minimumVersion: "9.25.0",
|
||||
},
|
||||
],
|
||||
entitlements: {
|
||||
"com.apple.security.application-groups":
|
||||
config.ios?.entitlements?.[
|
||||
|
||||
@@ -1,11 +1,19 @@
|
||||
import SwiftUI
|
||||
import WatchConnectivity
|
||||
import Sentry
|
||||
|
||||
@main
|
||||
struct SwimTrackerWatchApp: App {
|
||||
@StateObject private var workoutManager = WorkoutManager()
|
||||
|
||||
init() {
|
||||
SentrySDK.start { options in
|
||||
options.dsn = "https://6197bcf085d63727d829aa89ede8e973@o4507430203293696.ingest.de.sentry.io/4511875297706064"
|
||||
options.debug = false
|
||||
options.tracesSampleRate = 1.0
|
||||
options.enableLogs = true
|
||||
}
|
||||
|
||||
if WCSession.isSupported() {
|
||||
let session = WCSession.default
|
||||
session.delegate = PhoneConnector.shared
|
||||
|
||||
@@ -2,6 +2,7 @@ plugins {
|
||||
id("com.android.application")
|
||||
id("org.jetbrains.kotlin.android")
|
||||
id("org.jetbrains.kotlin.plugin.compose")
|
||||
id("io.sentry.android.gradle") version "6.17.0"
|
||||
}
|
||||
|
||||
android {
|
||||
@@ -14,6 +15,9 @@ android {
|
||||
targetSdk = 35
|
||||
versionCode = 1
|
||||
versionName = "1.0.0"
|
||||
|
||||
val sentryDsn = System.getenv("SENTRY_DSN") ?: ""
|
||||
manifestPlaceholders["sentryDsn"] = sentryDsn
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
@@ -68,4 +72,15 @@ dependencies {
|
||||
|
||||
// Gson for JSON
|
||||
implementation("com.google.code.gson:gson:2.11.0")
|
||||
|
||||
// Sentry
|
||||
implementation("io.sentry:sentry-android:8.52.0")
|
||||
}
|
||||
|
||||
sentry {
|
||||
uploadNativeSymbols = true
|
||||
includeNativeSources = true
|
||||
autoInstallation {
|
||||
enabled = false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,6 +18,22 @@
|
||||
android:supportsRtl="true"
|
||||
android:theme="@android:style/Theme.Material.Light.NoActionBar">
|
||||
|
||||
<meta-data
|
||||
android:name="io.sentry.dsn"
|
||||
android:value="${sentryDsn}" />
|
||||
|
||||
<meta-data
|
||||
android:name="io.sentry.traces.sample-rate"
|
||||
android:value="1.0" />
|
||||
|
||||
<meta-data
|
||||
android:name="io.sentry.logs.enabled"
|
||||
android:value="true" />
|
||||
|
||||
<meta-data
|
||||
android:name="io.sentry.attach-screenshot"
|
||||
android:value="true" />
|
||||
|
||||
<activity
|
||||
android:name=".SwimBuddyWearActivity"
|
||||
android:exported="true"
|
||||
|
||||
@@ -2,4 +2,5 @@ plugins {
|
||||
id("com.android.application") version "8.7.3" apply false
|
||||
id("org.jetbrains.kotlin.android") version "2.0.21" apply false
|
||||
id("org.jetbrains.kotlin.plugin.compose") version "2.0.21" apply false
|
||||
id("io.sentry.android.gradle") version "6.17.0" apply false
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user