Skip to content

Commit 5959b49

Browse files
authored
feat: improve Objc/Swift experience with HiddenFromObjc (#62)
* add HiddenFromObjc * Update changelog * add kotlin badge
1 parent aeb45f2 commit 5959b49

File tree

4 files changed

+15
-3
lines changed

4 files changed

+15
-3
lines changed

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# Changelog
22

3+
## Unreleased
4+
5+
### Features
6+
7+
- Improve Objc/Swift experience with @HiddenFromObjc ([#62](https://github.com/getsentry/sentry-kotlin-multiplatform/pull/62))
8+
39
## 0.0.3
410

511
### Fixes

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
This project is an experimental SDK for Kotlin Multiplatform.
1212
This SDK is a wrapper around different platforms such as JVM, Android, iOS, macOS, watchOS, tvOS that can be used on Kotlin Multiplatform.
1313

14+
[![Kotlin](https://img.shields.io/badge/Kotlin-1.8.0-blue.svg?style=flat&logo=kotlin)](https://kotlinlang.org)
15+
1416
| Packages | Maven Central
1517
|-----------------------------------------| -------
1618
| sentry-kotlin-multiplatform | [![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.sentry/sentry-kotlin-multiplatform/badge.svg)](https://maven-badges.herokuapp.com/maven-central/io.sentry/sentry-kotlin-multiplatform)

sentry-kotlin-multiplatform/src/commonMain/kotlin/io/sentry/kotlin/multiplatform/SentryKMP.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ import io.sentry.kotlin.multiplatform.protocol.Breadcrumb
44
import io.sentry.kotlin.multiplatform.protocol.SentryId
55
import io.sentry.kotlin.multiplatform.protocol.User
66
import io.sentry.kotlin.multiplatform.protocol.UserFeedback
7+
import kotlin.experimental.ExperimentalObjCRefinement
8+
import kotlin.native.HiddenFromObjC
79

810
typealias ScopeCallback = (Scope) -> Unit
911
typealias OptionsConfiguration = (SentryOptions) -> Unit
@@ -19,6 +21,8 @@ object Sentry {
1921
* @param context: The context (used for retrieving Android Context)
2022
* @param configuration Options configuration handler.
2123
*/
24+
@OptIn(ExperimentalObjCRefinement::class)
25+
@HiddenFromObjC
2226
fun init(context: Context, configuration: OptionsConfiguration) {
2327
SentryBridge.init(context, configuration)
2428
}

sentry-samples/kmp-app/iosApp/iosApp/iOSApp.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,15 @@ import shared
33

44
@main
55
struct iOSApp: App {
6-
let sentry = Sentry()
7-
6+
let sentry = Sentry.shared
7+
88
init() {
99
// Initialize Sentry using shared code
1010
AppSetupKt.initializeSentry()
1111

1212
// Shared scope across all platforms
1313
AppSetupKt.configureSentryScope()
14-
14+
1515
// Add platform specific scope in addition to the shared scope
1616
sentry.configureScope { scope in
1717
scope.setContext(key: "iOS Context", value: [

0 commit comments

Comments
 (0)