Skip to content

Commit

Permalink
Revert "Session Replay: Recording on Android (#3552)" (#3827)
Browse files Browse the repository at this point in the history
  • Loading branch information
jamescrosswell authored Dec 5, 2024
1 parent fc4cda3 commit a621f42
Show file tree
Hide file tree
Showing 8 changed files with 5 additions and 75 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@

## Unreleased

### API Changes

- Temporarily removed experimental Session Replay support ([#3827](https://github.com/getsentry/sentry-dotnet/pull/3827))

### Fixes
- Fixed JNI Error when accessing Android device data from multiple threads ([#3802](https://github.com/getsentry/sentry-dotnet/pull/3802))

Expand Down
9 changes: 1 addition & 8 deletions samples/Sentry.Samples.Maui/MauiProgram.cs
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,6 @@ public static MauiApp CreateMauiApp()
options.Debug = true;
options.SampleRate = 1.0F;

#if ANDROID
// Currently experimental support is only available on Android
options.Native.ExperimentalOptions.SessionReplay.OnErrorSampleRate = 1.0;
options.Native.ExperimentalOptions.SessionReplay.SessionSampleRate = 1.0;
options.Native.ExperimentalOptions.SessionReplay.MaskAllImages = false;
options.Native.ExperimentalOptions.SessionReplay.MaskAllText = false;
#endif

options.SetBeforeScreenshotCapture((@event, hint) =>
{
Console.WriteLine("screenshot about to be captured.");
Expand All @@ -41,6 +33,7 @@ public static MauiApp CreateMauiApp()
return true;
});
})

.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
Expand Down
7 changes: 0 additions & 7 deletions src/Sentry.Bindings.Android/Sentry.Bindings.Android.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@
<AndroidLibrary Include="$(SentryAndroidSdkDirectory)sentry-$(SentryAndroidSdkVersion).jar" />
<AndroidLibrary Include="$(SentryAndroidSdkDirectory)sentry-android-core-$(SentryAndroidSdkVersion).aar" />
<AndroidLibrary Include="$(SentryAndroidSdkDirectory)sentry-android-ndk-$(SentryAndroidSdkVersion).aar" />
<AndroidLibrary Include="$(SentryAndroidSdkDirectory)sentry-android-replay-$(SentryAndroidSdkVersion).aar" />
<AndroidLibrary Include="..\..\lib\sentry-android-supplemental\bin\sentry-android-supplemental.jar" />
<AndroidNativeLibrary Include="..\..\lib\sentrysupplemental\bin\arm64-v8a\libsentrysupplemental.so" Abi="arm64-v8a" />
<AndroidNativeLibrary Include="..\..\lib\sentrysupplemental\bin\armeabi-v7a\libsentrysupplemental.so" Abi="armeabi-v7a" />
Expand All @@ -54,12 +53,6 @@
Condition="!Exists('$(SentryAndroidSdkDirectory)sentry-android-ndk-$(SentryAndroidSdkVersion).aar')"
Retries="3"
/>
<DownloadFile
SourceUrl="https://repo1.maven.org/maven2/io/sentry/sentry-android-replay/$(SentryAndroidSdkVersion)/sentry-android-replay-$(SentryAndroidSdkVersion).aar"
DestinationFolder="$(SentryAndroidSdkDirectory)"
Condition="!Exists('$(SentryAndroidSdkDirectory)sentry-android-replay-$(SentryAndroidSdkVersion).aar')"
Retries="3"
/>
<DownloadFile
SourceUrl="https://repo1.maven.org/maven2/io/sentry/sentry/$(SentryAndroidSdkVersion)/sentry-$(SentryAndroidSdkVersion).jar"
DestinationFolder="$(SentryAndroidSdkDirectory)"
Expand Down
2 changes: 0 additions & 2 deletions src/Sentry.Bindings.Android/Transforms/Metadata.xml
Original file line number Diff line number Diff line change
Expand Up @@ -118,8 +118,6 @@
<remove-node path="/api/package[@name='io.sentry.android.core']/class[@name='TempSensorBreadcrumbsIntegration']" />
<remove-node path="/api/package[@name='io.sentry.android.core.internal.gestures']" />
<remove-node path="/api/package[@name='io.sentry.android.core.performance']" />
<remove-node path="/api/package[@name='io.sentry.android.replay.viewhierarchy']" />
<remove-node path="/api/package[@name='io.sentry.android.replay.util']" />

<remove-node path="/api/package[starts-with(@name,'io.sentry')]/*/method[@name='clone' and count(parameter)=0]" />
<remove-node path="/api/package[starts-with(@name,'io.sentry')]/class/implements[@name='io.sentry.JsonDeserializer']" />
Expand Down
29 changes: 0 additions & 29 deletions src/Sentry/Platforms/Android/BindableNativeSentryOptions.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
// ReSharper disable once CheckNamespace

namespace Sentry;

internal partial class BindableSentryOptions
Expand Down Expand Up @@ -35,20 +34,7 @@ public class NativeOptions
public TimeSpan? ReadTimeout { get; set; }
public bool? EnableTracing { get; set; }
public bool? EnableBeforeSend { get; set; }
public NativeExperimentalOptions ExperimentalOptions { get; set; } = new();

internal class NativeExperimentalOptions
{
public NativeSentryReplayOptions SessionReplay { get; set; } = new();
}

internal class NativeSentryReplayOptions
{
public double? OnErrorSampleRate { get; set; }
public double? SessionSampleRate { get; set; }
public bool RedactAllImages { get; set; }
public bool RedactAllText { get; set; }
}
public void ApplyTo(SentryOptions.NativeOptions options)
{
options.AnrEnabled = AnrEnabled ?? options.AnrEnabled;
Expand All @@ -75,21 +61,6 @@ public void ApplyTo(SentryOptions.NativeOptions options)
options.ReadTimeout = ReadTimeout ?? options.ReadTimeout;
options.EnableTracing = EnableTracing ?? options.EnableTracing;
options.EnableBeforeSend = EnableBeforeSend ?? options.EnableBeforeSend;

if (ExperimentalOptions.SessionReplay.OnErrorSampleRate is { } errorSampleRate)
{
#pragma warning disable CA1422
options.ExperimentalOptions.SessionReplay.OnErrorSampleRate = errorSampleRate;
#pragma warning restore CA1422
}
if (ExperimentalOptions.SessionReplay.SessionSampleRate is { } sessionSampleRate)
{
#pragma warning disable CA1422
options.ExperimentalOptions.SessionReplay.SessionSampleRate = sessionSampleRate;
#pragma warning restore CA1422
}
ExperimentalOptions.SessionReplay.RedactAllText = options.ExperimentalOptions.SessionReplay.MaskAllText;
ExperimentalOptions.SessionReplay.RedactAllImages = options.ExperimentalOptions.SessionReplay.MaskAllImages;
}
}
}
17 changes: 0 additions & 17 deletions src/Sentry/Platforms/Android/NativeOptions.cs
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
// ReSharper disable once CheckNamespace

namespace Sentry;

public partial class SentryOptions
Expand Down Expand Up @@ -261,21 +260,5 @@ public void AddInAppInclude(string prefix)
/// be stripped away during the round-tripping between the two SDKs. Use with caution.
/// </remarks>
public bool EnableBeforeSend { get; set; } = false;
public class NativeExperimentalOptions
{
public NativeSentryReplayOptions SessionReplay { get; set; } = new();
}

public class NativeSentryReplayOptions
{
public double? OnErrorSampleRate { get; set; }
public double? SessionSampleRate { get; set; }
public bool MaskAllImages { get; set; } = true;
public bool MaskAllText { get; set; } = true;
}
/// <summary>
/// ExperimentalOptions
/// </summary>
public NativeExperimentalOptions ExperimentalOptions { get; set; } = new();
}
}
7 changes: 0 additions & 7 deletions src/Sentry/Platforms/Android/SentrySdk.cs
Original file line number Diff line number Diff line change
Expand Up @@ -132,13 +132,6 @@ private static void InitSentryAndroidSdk(SentryOptions options)
options.Native.InAppExcludes?.ForEach(o.AddInAppExclude);
options.Native.InAppIncludes?.ForEach(o.AddInAppInclude);

o.Experimental.SessionReplay.OnErrorSampleRate =
(JavaDouble?)options.Native.ExperimentalOptions.SessionReplay.OnErrorSampleRate;
o.Experimental.SessionReplay.SessionSampleRate =
(JavaDouble?)options.Native.ExperimentalOptions.SessionReplay.SessionSampleRate;
o.Experimental.SessionReplay.SetMaskAllImages(options.Native.ExperimentalOptions.SessionReplay.MaskAllImages);
o.Experimental.SessionReplay.SetMaskAllText(options.Native.ExperimentalOptions.SessionReplay.MaskAllText);

// These options are intentionally set and not exposed for modification
o.EnableExternalConfiguration = false;
o.EnableDeduplication = false;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,6 @@ namespace Sentry.Tests.Platforms.Android;

public class BindableNativeOptionsTests : BindableTests<SentryOptions.NativeOptions>
{
public BindableNativeOptionsTests()
: base(nameof(BindableSentryOptions.NativeOptions.ExperimentalOptions))
{
}

[Fact]
public void BindableProperties_MatchOptionsProperties()
{
Expand Down

0 comments on commit a621f42

Please sign in to comment.