├── Documentation
├── .gitignore
├── icons
│ └── Help.png
├── ContentLayout.content
└── Content
│ └── VersionHistory
│ ├── v1.0.0.0.aml
│ └── VersionHistory.aml
├── .github
├── CODEOWNERS
├── ISSUE_TEMPLATE
│ └── feature_request.md
└── PULL_REQUEST_TEMPLATE.md
├── Apps
├── Contoso.MAUI.Demo
│ ├── global.json
│ ├── Resources
│ │ ├── Fonts
│ │ │ ├── OpenSans-Regular.ttf
│ │ │ └── OpenSans-Semibold.ttf
│ │ └── AppIcon
│ │ │ └── appicon.svg
│ ├── Properties
│ │ └── launchSettings.json
│ ├── run.sh
│ ├── Platforms
│ │ ├── Android
│ │ │ ├── Resources
│ │ │ │ └── values
│ │ │ │ │ └── colors.xml
│ │ │ ├── AndroidManifest.xml
│ │ │ ├── MainApplication.cs
│ │ │ └── MainActivity.cs
│ │ ├── Windows
│ │ │ ├── App.xaml
│ │ │ ├── app.manifest
│ │ │ └── App.xaml.cs
│ │ ├── iOS
│ │ │ ├── AppDelegate.cs
│ │ │ ├── Program.cs
│ │ │ └── Info.plist
│ │ ├── MacCatalyst
│ │ │ ├── AppDelegate.cs
│ │ │ ├── Program.cs
│ │ │ └── Info.plist
│ │ └── Tizen
│ │ │ ├── Main.cs
│ │ │ └── tizen-manifest.xml
│ ├── MainPage.xaml.cs
│ ├── CrashUtils.cs
│ ├── FakeService.cs
│ ├── Property.cs
│ ├── PropertiesContentPage.xaml.cs
│ ├── MainPage.xaml
│ ├── EventFilterHolder.cs
│ ├── MauiProgram.cs
│ ├── App.xaml
│ ├── AddPropertyContentPage.xaml.cs
│ ├── Constants.cs
│ ├── PropertiesContentPage.xaml
│ ├── Views
│ │ └── TextAttachmentView.xaml
│ ├── AddPropertyContentPage.xaml
│ └── StartTypeUtils.cs
├── Contoso.UWP.Demo
│ ├── Assets
│ │ ├── StoreLogo.png
│ │ ├── SplashScreen.scale-200.png
│ │ ├── LockScreenLogo.scale-200.png
│ │ ├── Square44x44Logo.scale-200.png
│ │ ├── Wide310x150Logo.scale-200.png
│ │ ├── Square150x150Logo.scale-200.png
│ │ └── Square44x44Logo.targetsize-24_altform-unplated.png
│ ├── App.xaml
│ ├── MainPage.xaml
│ └── Properties
│ │ └── AssemblyInfo.cs
├── Contoso.UWP.Puppet
│ ├── Assets
│ │ ├── StoreLogo.png
│ │ ├── SplashScreen.scale-200.png
│ │ ├── LockScreenLogo.scale-200.png
│ │ ├── Square44x44Logo.scale-200.png
│ │ ├── Wide310x150Logo.scale-200.png
│ │ ├── Square150x150Logo.scale-200.png
│ │ └── Square44x44Logo.targetsize-24_altform-unplated.png
│ ├── App.xaml
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── MainPage.xaml
├── Contoso.UtilClassLibrary
│ ├── Contoso.UtilClassLibrary.csproj
│ └── CrashUtils.cs
├── Contoso.WPF.Puppet
│ ├── project.json
│ ├── App.xaml
│ ├── UserConfirmationDialog.xaml.cs
│ └── Properties
│ │ └── Settings.settings
├── Contoso.WinForms.Puppet
│ ├── project.json
│ └── Properties
│ │ └── Settings.settings
├── Contoso.WinUI.Desktop.Demo
│ ├── Contoso.WinUI.Desktop.Demo (Package)
│ │ └── Images
│ │ │ ├── StoreLogo.png
│ │ │ ├── SplashScreen.scale-200.png
│ │ │ ├── LockScreenLogo.scale-200.png
│ │ │ ├── Square44x44Logo.scale-200.png
│ │ │ ├── Wide310x150Logo.scale-200.png
│ │ │ ├── Square150x150Logo.scale-200.png
│ │ │ └── Square44x44Logo.targetsize-24_altform-unplated.png
│ └── Contoso.WinUI.Desktop.Demo
│ │ ├── app.manifest
│ │ ├── Properties
│ │ └── PublishProfiles
│ │ │ ├── win10-x64.pubxml
│ │ │ ├── win10-x86.pubxml
│ │ │ └── win10-arm64.pubxml
│ │ ├── App.xaml
│ │ └── Constants.cs
├── Contoso.WinUI.Desktop.Puppet
│ ├── Contoso.WinUI.Desktop.Puppet (Package)
│ │ └── Images
│ │ │ ├── StoreLogo.png
│ │ │ ├── SplashScreen.scale-200.png
│ │ │ ├── LockScreenLogo.scale-200.png
│ │ │ ├── Square150x150Logo.scale-200.png
│ │ │ ├── Square44x44Logo.scale-200.png
│ │ │ ├── Wide310x150Logo.scale-200.png
│ │ │ └── Square44x44Logo.targetsize-24_altform-unplated.png
│ └── Contoso.WinUI.Desktop.Puppet
│ │ ├── app.manifest
│ │ ├── Properties
│ │ └── PublishProfiles
│ │ │ ├── win10-x64.pubxml
│ │ │ ├── win10-x86.pubxml
│ │ │ └── win10-arm64.pubxml
│ │ ├── App.xaml
│ │ └── Constants.cs
├── Contoso.WPF.Demo
│ ├── App.xaml
│ ├── UserConfirmationDialog.xaml.cs
│ └── Properties
│ │ └── Settings.settings
├── Contoso.WPF.Demo.DotNetCore
│ ├── App.xaml
│ ├── UserConfirmationDialog.xaml.cs
│ └── Settings.settings
├── Contoso.WPF.Puppet.DotNetCore
│ ├── App.xaml
│ ├── UserConfirmationDialog.xaml.cs
│ └── Settings.settings
├── Contoso.WinForms.Demo.DotNetCore
│ ├── Settings.settings
│ └── Contoso.WinForms.Demo.DotNetCore.csproj
├── Contoso.WinForms.Demo
│ └── Properties
│ │ ├── Settings.settings
│ │ └── AssemblyInfo.cs
└── Contoso.WinForms.Puppet.DotNetCore
│ └── Settings.settings
├── SDK
├── AppCenter
│ ├── Microsoft.AppCenter.Apple
│ │ ├── global.json
│ │ ├── StructsAndEnums.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── DependencyConfiguration.cs
│ │ └── Device.cs
│ ├── Microsoft.AppCenter.Shared
│ │ ├── NamespaceDoc.cs
│ │ ├── WrapperSdk.cs
│ │ └── LogLevel.cs
│ ├── Microsoft.AppCenter.WindowsDesktop
│ │ ├── AppCenterPart.cs
│ │ └── Ingestion
│ │ │ └── Http
│ │ │ ├── NetworkStateAdapter.cs
│ │ │ └── HttpNetworkAdapter.cs
│ ├── Microsoft.AppCenter.UWP
│ │ ├── Utils
│ │ │ ├── IScreenSizeProviderFactory.cs
│ │ │ ├── DefaultScreenSizeProviderFactory.cs
│ │ │ ├── IScreenSizeProvider.cs
│ │ │ ├── ScreenSizeProviderBase.cs
│ │ │ ├── DefaultApplicationSettings.cs
│ │ │ └── Constants.cs
│ │ ├── AppCenterPart.cs
│ │ └── Properties
│ │ │ └── AssemblyInfo.cs
│ ├── Microsoft.AppCenter
│ │ ├── DependencyConfiguration.cs
│ │ ├── Microsoft.AppCenter.csproj
│ │ └── Properties
│ │ │ └── AssemblyInfo.cs
│ ├── Microsoft.AppCenter.Shared.Xamarin
│ │ ├── HttpResponse.cs
│ │ ├── AppCenterService.cs
│ │ ├── IAppCenterService.cs
│ │ ├── DependencyConfiguration.Shared.cs
│ │ ├── HttpException.cs
│ │ └── IHttpNetworkAdapter.cs
│ ├── Microsoft.AppCenter.Shared.Windows
│ │ ├── Utils
│ │ │ ├── IApplicationSettingsFactory.cs
│ │ │ ├── SessionContext.cs
│ │ │ ├── UserIdEventArgs.cs
│ │ │ ├── TimeHelper.cs
│ │ │ ├── Constants.cs
│ │ │ ├── IApplicationSettings.cs
│ │ │ ├── Synchronization
│ │ │ │ └── StatefulMutexException.cs
│ │ │ ├── UnhandledExceptionOccurredEventArgs.cs
│ │ │ ├── IDeviceInformationHelper.cs
│ │ │ └── Files
│ │ │ │ └── File.cs
│ │ ├── Channel
│ │ │ ├── IAppSecretHolder.cs
│ │ │ ├── CancellationException.cs
│ │ │ ├── IChannelGroupFactory.cs
│ │ │ └── IChannelUnit.cs
│ │ ├── Ingestion
│ │ │ ├── Http
│ │ │ │ ├── INetworkStateAdapter.cs
│ │ │ │ ├── NetworkIngestionException.cs
│ │ │ │ ├── IHttpNetworkAdapter.cs
│ │ │ │ └── HttpIngestionException.cs
│ │ │ └── IngestionException.cs
│ │ ├── Storage
│ │ │ ├── StorageFullException.cs
│ │ │ ├── StorageCorruptedException.cs
│ │ │ └── StorageException.cs
│ │ ├── IAppCenterService.cs
│ │ └── Device.cs
│ ├── Directory.Build.props
│ └── Microsoft.AppCenter.Android
│ │ ├── Properties
│ │ └── AssemblyInfo.cs
│ │ ├── DependencyConfiguration.cs
│ │ ├── Microsoft.AppCenter.Android.csproj
│ │ ├── Device.cs
│ │ └── Microsoft.AppCenter.Android.Mono.csproj
├── AppCenterAnalytics
│ ├── Microsoft.AppCenter.Analytics.Apple
│ │ ├── StructsAndEnums.cs
│ │ └── Properties
│ │ │ └── AssemblyInfo.cs
│ ├── Microsoft.AppCenter.Analytics.UWP
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── Microsoft.AppCenter.Analytics.UWP.csproj
│ ├── Microsoft.AppCenter.Analytics.Shared
│ │ └── NamespaceDoc.cs
│ ├── Microsoft.AppCenter.Analytics.Shared.Windows
│ │ └── Channel
│ │ │ ├── ISessionTracker.cs
│ │ │ └── ISessionTrackerFactory.cs
│ ├── Microsoft.AppCenter.Analytics
│ │ ├── Microsoft.AppCenter.Analytics.csproj
│ │ └── Properties
│ │ │ └── AssemblyInfo.cs
│ ├── Microsoft.AppCenter.Analytics.Android
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── Microsoft.AppCenter.Analytics.Android.csproj
│ ├── Directory.Build.props
│ └── Microsoft.AppCenter.Analytics.WindowsDesktop
│ │ └── Microsoft.AppCenter.Analytics.WindowsDesktop.csproj
├── AppCenterCrashes
│ ├── Microsoft.AppCenter.Crashes.UWP
│ │ └── Properties
│ │ │ └── AssemblyInfo.cs
│ ├── Microsoft.AppCenter.Crashes.Shared
│ │ ├── NamespaceDoc.cs
│ │ ├── UserConfirmation.cs
│ │ └── TestCrashException.cs
│ ├── Microsoft.AppCenter.Crashes.Apple
│ │ ├── StructsAndEnums.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── CrashesUtils.cs
│ ├── Microsoft.AppCenter.Crashes
│ │ ├── Microsoft.AppCenter.Crashes.csproj
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── ErrorAttachmentLog.cs
│ ├── Directory.Build.props
│ ├── Microsoft.AppCenter.Crashes.WindowsDesktop
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── TestCrashException.Serializable.cs
│ │ └── Microsoft.AppCenter.Crashes.WindowsDesktop.csproj
│ ├── Microsoft.AppCenter.Crashes.Shared.Xamarin
│ │ └── TestCrashException.Serializable.cs
│ ├── Microsoft.AppCenter.Crashes.Android
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── ErrorReportCache.cs
│ │ ├── Microsoft.AppCenter.Crashes.Android.csproj
│ │ └── ErrorAttachmentLog.cs
│ └── Microsoft.AppCenter.Crashes.Shared.Windows
│ │ ├── Utils
│ │ └── ErrorExceptionAndBinaries.cs
│ │ └── ErrorReport.cs
├── AppCenterDistribute
│ ├── Microsoft.AppCenter.Distribute.Shared
│ │ ├── NamespaceDoc.cs
│ │ ├── UserUpdate.cs
│ │ ├── DistributeDelegates.cs
│ │ └── UpdateTrack.cs
│ ├── Microsoft.AppCenter.Distribute.Android
│ │ ├── Additions
│ │ │ ├── DeepLinkActivity.cs
│ │ │ └── DownloadManagerReceiver.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── Microsoft.AppCenter.Distribute.Android.csproj
│ ├── Microsoft.AppCenter.Distribute.Apple
│ │ ├── StructsAndEnums.cs
│ │ └── Properties
│ │ │ └── AssemblyInfo.cs
│ ├── Microsoft.AppCenter.Distribute
│ │ ├── Microsoft.AppCenter.Distribute.csproj
│ │ └── Properties
│ │ │ └── AssemblyInfo.cs
│ ├── Directory.Build.props
│ └── Microsoft.AppCenter.Distribute.AndroidPlay
│ │ ├── Transforms
│ │ └── Metadata.xml
│ │ └── Microsoft.AppCenter.Distribute.AndroidPlay.csproj
└── Directory.Build.props
├── appcenter-public-key.snk
├── NuGet.config
├── Tests
├── Microsoft.AppCenter.Test.UWP
│ ├── Assets
│ │ ├── StoreLogo.png
│ │ ├── SplashScreen.scale-200.png
│ │ ├── LockScreenLogo.scale-200.png
│ │ ├── Square44x44Logo.scale-200.png
│ │ ├── Wide310x150Logo.scale-200.png
│ │ ├── Square150x150Logo.scale-200.png
│ │ └── Square44x44Logo.targetsize-24_altform-unplated.png
│ ├── UnitTestApp.xaml
│ ├── TestAppCenterService.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── Utils
│ │ └── NetworkStateTests.cs
├── Contoso.Test.Functional.Droid
│ ├── Resources
│ │ ├── mipmap-hdpi
│ │ │ └── Icon.png
│ │ ├── mipmap-mdpi
│ │ │ └── Icon.png
│ │ ├── mipmap-xhdpi
│ │ │ └── Icon.png
│ │ ├── mipmap-xxhdpi
│ │ │ └── Icon.png
│ │ └── mipmap-xxxhdpi
│ │ │ └── Icon.png
│ ├── xunit.runner.json
│ ├── Assets
│ │ └── xunit.runner.json
│ └── Properties
│ │ └── AndroidManifest.xml
├── Contoso.Test.Functional.iOS
│ ├── xunit.runner.json
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ ├── Icon1024.png
│ │ │ ├── Icon120.png
│ │ │ ├── Icon152.png
│ │ │ ├── Icon167.png
│ │ │ ├── Icon180.png
│ │ │ ├── Icon20.png
│ │ │ ├── Icon29.png
│ │ │ ├── Icon40.png
│ │ │ ├── Icon58.png
│ │ │ ├── Icon60.png
│ │ │ ├── Icon76.png
│ │ │ ├── Icon80.png
│ │ │ └── Icon87.png
│ ├── Entitlements.plist
│ └── Main.cs
├── Microsoft.AppCenter.Test
│ ├── AppCenterPart.cs
│ ├── Utils
│ │ └── Constants.cs
│ ├── Ingestion
│ │ └── Http
│ │ │ └── NetworkStateAdapter.cs
│ ├── Microsoft.AppCenter.Test.csproj
│ └── Properties
│ │ └── AssemblyInfo.cs
├── Microsoft.AppCenter.Test.Windows
│ ├── Ingestion
│ │ ├── Models
│ │ │ └── TestLog.cs
│ │ └── Http
│ │ │ └── HttpIngestionExceptionTest.cs
│ ├── IngestionExceptions.cs
│ ├── PropertyValidatorTest.cs
│ ├── TestAppCenterService.cs
│ ├── Utils
│ │ ├── MockApplicationSettingsFactory.cs
│ │ └── UnhandledExceptionEventArgsTest.cs
│ ├── Channel
│ │ └── MockChannelGroupFactory.cs
│ └── Properties
│ │ └── AssemblyInfo.cs
├── Microsoft.AppCenter.Test.WindowsDesktop.Shared
│ ├── AppCenterTest.cs
│ ├── Microsoft.AppCenter.Test.WindowsDesktop.Shared.projitems
│ ├── Microsoft.AppCenter.Test.WindowsDesktop.Shared.shproj
│ └── Utils
│ │ └── DeviceInformationHelperTest.cs
├── Microsoft.AppCenter.Analytics.Test
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── Microsoft.AppCenter.Analytics.Test.csproj
├── Microsoft.AppCenter.Test.WindowsDesktop
│ ├── Utils
│ │ └── DeviceInformationHelperTest.cs
│ └── Properties
│ │ └── AssemblyInfo.cs
├── Microsoft.AppCenter.Analytics.Test.Windows
│ ├── SessionTrackerFactory.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── Ingestion
│ │ └── Models
│ │ └── StartSessionLogTest.cs
├── Microsoft.AppCenter.Crashes.Test.Windows
│ └── Properties
│ │ └── AssemblyInfo.cs
└── Microsoft.AppCenter.Test.Functional
│ ├── RequestData.cs
│ └── Config.cs
├── .config
└── dotnet-tools.json
├── scripts
├── start-new-version.sh
├── update-demo-version.sh
├── start-new-version.ps1
├── update-demo-version.ps1
├── autorest.gen.cmd
├── configuration
│ └── config-parser.cake
├── update-app-secrets.sh
├── distribute-release.sh
├── git-auth.sh
├── appcenter-login.sh
└── strong-named-sign-delay.cmd
├── cgmanifest.json
├── license.txt
├── AppCenter-SDK-Build-Mac-Mono.slnf
└── appcenter-post-clone.ps1
/Documentation/.gitignore:
--------------------------------------------------------------------------------
1 | /Help
2 |
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | * @microsoft/appcenter-fte
2 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/global.json:
--------------------------------------------------------------------------------
1 | {
2 | "sdk": {
3 | "version": "8.0.401"
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Apple/global.json:
--------------------------------------------------------------------------------
1 | {
2 | "sdk": {
3 | "version": "6.0.402"
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/appcenter-public-key.snk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/appcenter-public-key.snk
--------------------------------------------------------------------------------
/Documentation/icons/Help.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Documentation/icons/Help.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Demo/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Puppet/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/NuGet.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Demo/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Microsoft.AppCenter.Test.UWP/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Demo/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Demo/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Demo/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Puppet/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Resources/Fonts/OpenSans-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.MAUI.Demo/Resources/Fonts/OpenSans-Regular.ttf
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Resources/Fonts/OpenSans-Semibold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.MAUI.Demo/Resources/Fonts/OpenSans-Semibold.ttf
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Demo/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Puppet/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Puppet/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Puppet/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Puppet/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-hdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-hdpi/Icon.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-mdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-mdpi/Icon.png
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Properties/launchSettings.json:
--------------------------------------------------------------------------------
1 | {
2 | "profiles": {
3 | "Windows Machine": {
4 | "commandName": "MsixPackage",
5 | "nativeDebugging": false
6 | }
7 | }
8 | }
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-xhdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-xhdpi/Icon.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-xxhdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-xxhdpi/Icon.png
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Microsoft.AppCenter.Test.UWP/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-xxxhdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.Droid/Resources/mipmap-xxxhdpi/Icon.png
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Microsoft.AppCenter.Test.UWP/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Microsoft.AppCenter.Test.UWP/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Microsoft.AppCenter.Test.UWP/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Microsoft.AppCenter.Test.UWP/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.Droid/xunit.runner.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://xunit.net/schema/current/xunit.runner.schema.json",
3 | "maxParallelThreads": 1,
4 | "parallelizeTestCollections": false
5 | }
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/xunit.runner.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://xunit.net/schema/current/xunit.runner.schema.json",
3 | "maxParallelThreads": 1,
4 | "parallelizeTestCollections": false
5 | }
6 |
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Demo/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.UWP.Puppet/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/Apps/Contoso.UtilClassLibrary/Contoso.UtilClassLibrary.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.Droid/Assets/xunit.runner.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://xunit.net/schema/current/xunit.runner.schema.json",
3 | "maxParallelThreads": 1,
4 | "parallelizeTestCollections": false
5 | }
6 |
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon1024.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon1024.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon120.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon120.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon152.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon152.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon167.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon167.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon180.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon180.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon20.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon29.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon29.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon40.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon58.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon58.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon60.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon60.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon76.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon80.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon80.png
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon87.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Contoso.Test.Functional.iOS/Assets.xcassets/AppIcon.appiconset/Icon87.png
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Puppet/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "SQLitePCLRaw.bundle_green": "2.1.7"
4 | },
5 | "frameworks": {
6 | "net472": {}
7 | },
8 | "runtimes": {
9 | "win": {}
10 | }
11 | }
--------------------------------------------------------------------------------
/.config/dotnet-tools.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 1,
3 | "isRoot": true,
4 | "tools": {
5 | "cake.tool": {
6 | "version": "2.2.0",
7 | "commands": [
8 | "dotnet-cake"
9 | ]
10 | }
11 | }
12 | }
--------------------------------------------------------------------------------
/Apps/Contoso.WinForms.Puppet/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "SQLitePCLRaw.bundle_green": "2.1.7"
4 | },
5 | "frameworks": {
6 | "net472": {}
7 | },
8 | "runtimes": {
9 | "win": {}
10 | }
11 | }
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/StoreLogo.png
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/StoreLogo.png
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Tests/Microsoft.AppCenter.Test.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.Apple/StructsAndEnums.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Analytics.Apple.Bindings
5 | {
6 | }
7 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.UWP/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.InteropServices;
5 |
6 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.UWP/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.InteropServices;
5 |
6 | [assembly: ComVisible(false)]
7 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Resources/AppIcon/appicon.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/run.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | # Copyright (c) Microsoft Corporation. All rights reserved.
4 | # Licensed under the MIT License.
5 |
6 | echo running with app secret: $MAUI_ANDROID_PROD
7 |
8 | MAUI_ANDROID_PROD=$MAUI_ANDROID_PROD dotnet build -t:Run -f net8.0-$@
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/Android/Resources/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #512BD4
4 | #2B0B98
5 | #2B0B98
6 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo (Package)/Images/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/microsoft/appcenter-sdk-dotnet/HEAD/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet (Package)/Images/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/scripts/start-new-version.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # Copyright (c) Microsoft Corporation. All rights reserved.
4 | # Licensed under the MIT License.
5 |
6 | # Note: Run this from within the root directory
7 |
8 | version=$1
9 |
10 | ./build.sh "version.cake" --Target="StartNewVersion" --NewVersion="$version"
11 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/MainPage.xaml.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Contoso.MAUI.Demo;
5 |
6 | public partial class MainPage : TabbedPage
7 | {
8 | public MainPage()
9 | {
10 | InitializeComponent();
11 | }
12 | }
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Demo/App.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/scripts/update-demo-version.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # Copyright (c) Microsoft Corporation. All rights reserved.
4 | # Licensed under the MIT License.
5 |
6 | # Note: Run this from within the root directory
7 |
8 | version=$1
9 |
10 | ./build.sh -s "version.cake" -t="UpdateDemoVersion" -DemoVersion="$version"
11 |
12 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Puppet/App.xaml:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test/AppCenterPart.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | public partial class AppCenter
7 | {
8 | public static string PlatformIdentifier = "core-test";
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared/NamespaceDoc.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | ///
7 | /// Core SDK module.
8 | ///
9 | class NamespaceDoc
10 | {
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/scripts/start-new-version.ps1:
--------------------------------------------------------------------------------
1 | # Copyright (c) Microsoft Corporation. All rights reserved.
2 | # Licensed under the MIT License.
3 |
4 | # Note: Run this from within the root directory
5 |
6 | [CmdletBinding()]
7 | Param(
8 | [string]$Version
9 | )
10 |
11 | .\build.ps1 "version.cake" --Target="StartNewVersion" --NewVersion="$Version"
12 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.WindowsDesktop/AppCenterPart.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | public partial class AppCenter
7 | {
8 | private const string PlatformIdentifier = "windowsdesktop";
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/scripts/update-demo-version.ps1:
--------------------------------------------------------------------------------
1 | # Copyright (c) Microsoft Corporation. All rights reserved.
2 | # Licensed under the MIT License.
3 |
4 | # Note: Run this from within the root directory
5 |
6 | [CmdletBinding()]
7 | Param(
8 | [string]$Version
9 | )
10 |
11 | .\build.ps1 -Script "version.cake" -Target "UpdateDemoVersion" -DemoVersion="$Version"
12 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Shared/NamespaceDoc.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Crashes
5 | {
6 | ///
7 | /// Crashes SDK module.
8 | ///
9 | class NamespaceDoc
10 | {
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/UnitTestApp.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.UWP/Utils/IScreenSizeProviderFactory.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Utils
5 | {
6 | public interface IScreenSizeProviderFactory
7 | {
8 | IScreenSizeProvider CreateScreenSizeProvider();
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter/DependencyConfiguration.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | static partial class DependencyConfiguration
7 | {
8 | private static IHttpNetworkAdapter PlatformHttpNetworkAdapter { get; set; }
9 | }
10 | }
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.Shared/NamespaceDoc.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Analytics
5 | {
6 | ///
7 | /// Analytics SDK module.
8 | ///
9 | class NamespaceDoc
10 | {
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Shared/NamespaceDoc.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Distribute
5 | {
6 | ///
7 | /// Distribute SDK module.
8 | ///
9 | class NamespaceDoc
10 | {
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Xamarin/HttpResponse.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | internal class HttpResponse
7 | {
8 | internal int StatusCode { get; set; }
9 | internal string Content { get; set; }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.UWP/AppCenterPart.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Utils;
5 |
6 | namespace Microsoft.AppCenter
7 | {
8 | public partial class AppCenter
9 | {
10 | private const string PlatformIdentifier = "uwp";
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/IApplicationSettingsFactory.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Utils
5 | {
6 | public interface IApplicationSettingsFactory
7 | {
8 | IApplicationSettings CreateApplicationSettings();
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/Windows/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/SessionContext.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Windows.Shared.Utils
7 | {
8 | public static class SessionContext
9 | {
10 | public static Guid? SessionId { get; set; }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Channel/IAppSecretHolder.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Channel
5 | {
6 | /* Capability interface for having an app secret */
7 | public interface IAppSecretHolder
8 | {
9 | string AppSecret { get; }
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/iOS/AppDelegate.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Foundation;
5 |
6 | namespace Contoso.MAUI.Demo;
7 |
8 | [Register("AppDelegate")]
9 | public class AppDelegate : MauiUIApplicationDelegate
10 | {
11 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
12 | }
13 |
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | keychain-access-groups
6 |
7 | $(AppIdentifierPrefix)com.contoso.test.functional
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/scripts/autorest.gen.cmd:
--------------------------------------------------------------------------------
1 | setlocal
2 | set specFile=%1
3 | set namespace=%2
4 | set generateFolder=%3
5 |
6 | set repoRoot=%~dp0..
7 |
8 | @echo on
9 | autorest -Modeler Swagger -CodeGenerator CSharp -Namespace %namespace% -ClientName %namespace% -Input %specFile% -outputDirectory %generateFolder% -Header "Copyright (c) Microsoft Corporation. All rights reserved." %~5
10 | @echo off
11 | endlocal
12 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/MacCatalyst/AppDelegate.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Foundation;
5 |
6 | namespace Contoso.MAUI.Demo;
7 |
8 | [Register("AppDelegate")]
9 | public class AppDelegate : MauiUIApplicationDelegate
10 | {
11 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
12 | }
13 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Demo.DotNetCore/App.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Puppet.DotNetCore/App.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Channel/CancellationException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | public class CancellationException : AppCenterException
7 | {
8 | public CancellationException() : base("Request cancelled because channel is disabled.") { }
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Xamarin/AppCenterService.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | ///
7 | /// Contains base functionality for classes that implement IAppCenterService
8 | ///
9 | public abstract class AppCenterService : IAppCenterService
10 | {
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/CrashUtils.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.IO;
5 | using System.Threading.Tasks;
6 |
7 | namespace Contoso.MAUI.Demo;
8 |
9 | public static class CrashUtils
10 | {
11 | public static Task BackgroundExceptionTask()
12 | {
13 | return Task.Run(() => throw new IOException("The answer is 42"));
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/FakeService.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.IO;
5 | using System.Threading.Tasks;
6 |
7 | namespace Contoso.MAUI.Demo;
8 |
9 | static class FakeService
10 | {
11 | internal static async Task DoStuffInBackground()
12 | {
13 | await Task.Run(() => throw new IOException("Server did not respond"));
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Ingestion/Http/INetworkStateAdapter.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Ingestion.Http
7 | {
8 | public interface INetworkStateAdapter
9 | {
10 | bool IsConnected { get; }
11 |
12 | event EventHandler NetworkStatusChanged;
13 | }
14 | }
15 |
16 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Channel/IChannelGroupFactory.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Ingestion.Http;
5 |
6 | namespace Microsoft.AppCenter.Channel
7 | {
8 | public interface IChannelGroupFactory
9 | {
10 | IChannelGroup CreateChannelGroup(string appSecret, INetworkStateAdapter networkState);
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Xamarin/IAppCenterService.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | ///
7 | /// Represents a module that provides a service through App Center.
8 | ///
9 | public interface IAppCenterService
10 | {
11 | /* This interface should remain empty */
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Apple/StructsAndEnums.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using ObjCRuntime;
6 |
7 | namespace Microsoft.AppCenter.Apple.Bindings
8 | {
9 | [Native]
10 | public enum MSACLogLevel : ulong
11 | {
12 | Verbose = 2,
13 | Debug = 3,
14 | Info = 4,
15 | Warning = 5,
16 | Error = 6,
17 | Assert = 7,
18 | None = 99
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter/Microsoft.AppCenter.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/Android/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Property.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Contoso.MAUI.Demo;
5 |
6 | public class Property
7 | {
8 | public string Name { get; private set; }
9 |
10 | public string Value { get; private set; }
11 |
12 | public Property(string propertyName, string propertyValue)
13 | {
14 | Name = propertyName;
15 | Value = propertyValue;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.Shared.Windows/Channel/ISessionTracker.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Analytics.Channel
5 | {
6 | public interface ISessionTracker
7 | {
8 | void Resume();
9 | void Pause();
10 | void Stop();
11 | void EnableManualSessionTracker();
12 | void StartSession();
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/Apps/Contoso.UtilClassLibrary/CrashUtils.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.IO;
5 | using System.Threading.Tasks;
6 |
7 | namespace Contoso.UtilClassLibrary
8 | {
9 | public static class CrashUtils
10 | {
11 | public static Task BackgroundExceptionTask()
12 | {
13 | return Task.Run(() => throw new IOException("The answer is 42"));
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.UWP/Utils/DefaultScreenSizeProviderFactory.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Utils
5 | {
6 | public class DefaultScreenSizeProviderFactory : IScreenSizeProviderFactory
7 | {
8 | public IScreenSizeProvider CreateScreenSizeProvider()
9 | {
10 | return new DefaultScreenSizeProvider();
11 | }
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/PropertiesContentPage.xaml.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Collections.Generic;
5 |
6 | namespace Contoso.MAUI.Demo;
7 |
8 | public partial class PropertiesContentPage : ContentPage
9 | {
10 | public PropertiesContentPage(List EventProperties)
11 | {
12 | InitializeComponent();
13 | PropertyList.ItemsSource = EventProperties;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Android/Additions/DeepLinkActivity.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Android.Runtime;
5 |
6 | namespace Microsoft.AppCenter.Distribute
7 | {
8 | [Preserve]
9 | class DeepLinkActivity : Android.DeepLinkActivity
10 | {
11 | /* We don't use that subclass, it's only for preserving the parent Java class when linker is used. */
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/Tizen/Main.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using Microsoft.Maui;
6 | using Microsoft.Maui.Hosting;
7 |
8 | namespace Contoso.MAUI.Demo;
9 |
10 | class Program : MauiApplication
11 | {
12 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
13 |
14 | static void Main(string[] args)
15 | {
16 | var app = new Program();
17 | app.Run(args);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Android/Additions/DownloadManagerReceiver.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Android.Runtime;
5 |
6 | namespace Microsoft.AppCenter.Distribute
7 | {
8 | [Preserve]
9 | class DownloadManagerReceiver : Android.DownloadManagerReceiver
10 | {
11 | /* We don't use that subclass, it's only for preserving the parent Java class when linker is used. */
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Xamarin/DependencyConfiguration.Shared.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | internal static partial class DependencyConfiguration
7 | {
8 | internal static IHttpNetworkAdapter HttpNetworkAdapter
9 | {
10 | get => PlatformHttpNetworkAdapter;
11 | set => PlatformHttpNetworkAdapter = value;
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Xamarin/HttpException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter
7 | {
8 | internal class HttpException : Exception
9 | {
10 | internal HttpResponse HttpResponse { get; private set; }
11 |
12 | internal HttpException(HttpResponse httpResponse)
13 | {
14 | HttpResponse = httpResponse;
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/Android/MainApplication.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Android.App;
5 | using Android.Runtime;
6 |
7 | namespace Contoso.MAUI.Demo;
8 |
9 | [Application]
10 | public class MainApplication : MauiApplication
11 | {
12 | public MainApplication(IntPtr handle, JniHandleOwnership ownership)
13 | : base(handle, ownership)
14 | {
15 | }
16 |
17 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
18 | }
19 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Storage/StorageFullException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Storage
5 | {
6 | internal class StorageFullException : StorageException
7 | {
8 | private const string DefaultMessage = "The database is full.";
9 |
10 | public StorageFullException() : base(DefaultMessage) { }
11 |
12 | public StorageFullException(string message) : base(message) { }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Apple/StructsAndEnums.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using ObjCRuntime;
6 |
7 | namespace Microsoft.AppCenter.Distribute.Apple.Bindings
8 | {
9 | [Native]
10 | public enum MSACUpdateAction : ulong
11 | {
12 | Update = 0,
13 | Postpone = 1
14 | }
15 |
16 | [Native]
17 | public enum MSACUpdateTrack : ulong
18 | {
19 | Public = 1,
20 | Private = 2
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.Shared.Windows/Channel/ISessionTrackerFactory.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Channel;
5 | using Microsoft.AppCenter.Utils;
6 |
7 | namespace Microsoft.AppCenter.Analytics.Channel
8 | {
9 | public interface ISessionTrackerFactory
10 | {
11 | ISessionTracker CreateSessionTracker(IChannelGroup channelGroup, IChannel channel, IApplicationSettings applicationSettings);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/iOS/Program.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using ObjCRuntime;
5 | using UIKit;
6 |
7 | namespace Contoso.MAUI.Demo;
8 |
9 | public class Program
10 | {
11 | // This is the main entry point of the application.
12 | static void Main(string[] args)
13 | {
14 | // if you want to use a different Application Delegate class from "AppDelegate"
15 | // you can specify it here.
16 | UIApplication.Main(args, null, typeof(AppDelegate));
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Apple/StructsAndEnums.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using ObjCRuntime;
6 |
7 | namespace Microsoft.AppCenter.Crashes.Apple.Bindings
8 | {
9 | [Native]
10 | public enum MSACErrorLogSetting : ulong
11 | {
12 | Disabled = 0,
13 | AlwaysAsk = 1,
14 | AutoSend = 2
15 | }
16 |
17 | [Native]
18 | public enum MSACUserConfirmation : ulong
19 | {
20 | DontSend = 0,
21 | Send = 1,
22 | Always = 2
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes/Microsoft.AppCenter.Crashes.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/EventFilterHolder.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Threading.Tasks;
6 |
7 | namespace Contoso.MAUI.Demo;
8 |
9 | public static class EventFilterHolder
10 | {
11 | public interface IImplementation
12 | {
13 | Type BindingType { get; }
14 |
15 | Task IsEnabledAsync();
16 |
17 | Task SetEnabledAsync(bool enabled);
18 | }
19 |
20 | public static IImplementation Implementation { get; set; }
21 | }
22 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/MacCatalyst/Program.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using ObjCRuntime;
5 | using UIKit;
6 |
7 | namespace Contoso.MAUI.Demo;
8 |
9 | public class Program
10 | {
11 | // This is the main entry point of the application.
12 | static void Main(string[] args)
13 | {
14 | // if you want to use a different Application Delegate class from "AppDelegate"
15 | // you can specify it here.
16 | UIApplication.Main(args, null, typeof(AppDelegate));
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics/Microsoft.AppCenter.Analytics.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute/Microsoft.AppCenter.Distribute.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard2.0
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Ingestion/Http/NetworkIngestionException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Ingestion.Http
7 | {
8 | public class NetworkIngestionException : IngestionException
9 | {
10 | public override bool IsRecoverable => true;
11 |
12 | public NetworkIngestionException() { }
13 | public NetworkIngestionException(Exception innerException) : base(innerException) { }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Microsoft.AppCenter.Core
6 | Microsoft.AppCenter
7 | Microsoft.AppCenter
8 | Microsoft.AppCenter.Core
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Storage/StorageCorruptedException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Storage
5 | {
6 | internal class StorageCorruptedException : StorageException
7 | {
8 | private const string DefaultMessage = "The database disk image is malformed.";
9 |
10 | public StorageCorruptedException() : base(DefaultMessage) { }
11 |
12 | public StorageCorruptedException(string message) : base(message) { }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Xamarin/IHttpNetworkAdapter.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Threading;
7 | using System.Threading.Tasks;
8 |
9 | namespace Microsoft.AppCenter
10 | {
11 | internal interface IHttpNetworkAdapter : IDisposable
12 | {
13 | Task SendAsync(string uri, string method, IDictionary headers, string jsonContent, CancellationToken cancellationToken);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/MauiProgram.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Contoso.MAUI.Demo;
5 |
6 | public static class MauiProgram
7 | {
8 | public static MauiApp CreateMauiApp()
9 | {
10 | var builder = MauiApp.CreateBuilder();
11 | builder
12 | .UseMauiApp()
13 | .ConfigureFonts(fonts =>
14 | {
15 | fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
16 | fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold");
17 | });
18 |
19 | return builder.Build();
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/Android/MainActivity.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Android.App;
5 | using Android.Content.PM;
6 | using Android.OS;
7 |
8 | namespace Contoso.MAUI.Demo;
9 |
10 | [Activity(Theme = "@style/Maui.SplashTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation | ConfigChanges.UiMode | ConfigChanges.ScreenLayout | ConfigChanges.SmallestScreenSize | ConfigChanges.Density)]
11 | public class MainActivity : MauiAppCompatActivity
12 | {
13 | }
14 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/UserIdEventArgs.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Windows.Shared.Utils
7 | {
8 | ///
9 | /// Event args for event that occurs when an user change is received.
10 | ///
11 | public class UserIdUpdatedEventArgs : EventArgs
12 | {
13 | ///
14 | /// User Id.
15 | ///
16 | public string UserId { get; internal set; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Apple/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
7 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Ingestion/Http/IHttpNetworkAdapter.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Collections.Generic;
6 | using System.Threading;
7 | using System.Threading.Tasks;
8 |
9 | namespace Microsoft.AppCenter.Ingestion.Http
10 | {
11 | public interface IHttpNetworkAdapter : IDisposable
12 | {
13 | Task SendAsync(string uri, string method, IDictionary headers, string jsonContent, CancellationToken cancellationToken);
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.iOS/Main.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using UIKit;
5 |
6 | namespace Contoso.Test.Functional.iOS
7 | {
8 | public class Application
9 | {
10 | // This is the main entry point of the application.
11 | static void Main(string[] args)
12 | {
13 | // if you want to use a different Application Delegate class from "AppDelegate"
14 | // you can specify it here.
15 | UIApplication.Main(args, null, "AppDelegate");
16 | }
17 | }
18 | }
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.Apple/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Microsoft.AppCenter.Crashes
6 | Microsoft.AppCenter.Crashes
7 | Microsoft.AppCenter.Crashes
8 | Microsoft.AppCenter.Crashes
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Apple/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.Android/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Apple/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
7 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/TestAppCenterService.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Test.UWP
5 | {
6 | public class TestAppCenterService : AppCenterService
7 | {
8 | protected override string ChannelName => "test_service";
9 | public override string ServiceName => "TestService";
10 |
11 | private static TestAppCenterService _instanceField;
12 | public static TestAppCenterService Instance => _instanceField ?? (_instanceField = new TestAppCenterService());
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Windows/Ingestion/Models/TestLog.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using Microsoft.AppCenter.Ingestion.Models;
6 |
7 | namespace Microsoft.AppCenter.Test.Windows.Ingestion.Models
8 | {
9 | using Device = Microsoft.AppCenter.Ingestion.Models.Device;
10 |
11 | class TestLog: Log
12 | {
13 | public TestLog() {}
14 | public TestLog(DateTime? timestamp, Device device, System.Guid? sid = default(System.Guid?))
15 | : base(device, timestamp, sid) { }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Microsoft.AppCenter.Analytics
6 | Microsoft.AppCenter.Analytics
7 | Microsoft.AppCenter.Analytics
8 | Microsoft.AppCenter.Analytics
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.WindowsDesktop/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 |
6 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Crashes.Test.Windows, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/scripts/configuration/config-parser.cake:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Xml;
5 | using System.Collections.Generic;
6 |
7 | public static class ConfigFile
8 | {
9 | public const string Name = "ac-build-config.xml";
10 | public const string Path = "scripts/configuration/" + Name;
11 |
12 | public static XmlReader CreateReader()
13 | {
14 | return XmlReader.Create(Path);
15 | }
16 | }
17 |
18 | #load "AppCenterModule.cake"
19 | #load "AssemblyGroup.cake"
20 | #load "BuildGroup.cake"
21 | #load "VersionReader.cake"
22 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Microsoft.AppCenter.Distribute
6 | Microsoft.AppCenter.Distribute
7 | Microsoft.AppCenter.Distribute
8 | Microsoft.AppCenter.Distribute
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo/app.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | true/PM
8 | PerMonitorV2, PerMonitor
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Shared/UserUpdate.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Distribute
5 | {
6 | ///
7 | /// User update action.
8 | ///
9 | public enum UpdateAction
10 | {
11 | ///
12 | /// Action to trigger the download of the release.
13 | ///
14 | Update,
15 |
16 | ///
17 | /// Action to postpone optional updates for 1 day.
18 | ///
19 | Postpone
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet/app.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | true/PM
8 | PerMonitorV2, PerMonitor
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes/ErrorAttachmentLog.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Crashes
5 | {
6 | public partial class ErrorAttachmentLog
7 | {
8 | static ErrorAttachmentLog PlatformAttachmentWithText(string text, string fileName)
9 | {
10 | return new ErrorAttachmentLog();
11 | }
12 |
13 | static ErrorAttachmentLog PlatformAttachmentWithBinary(byte[] data, string filename, string contentType)
14 | {
15 | return new ErrorAttachmentLog();
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo/Properties/PublishProfiles/win10-x64.pubxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | FileSystem
5 | x64
6 | win10-x64
7 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\
8 | true
9 | False
10 | True
11 |
12 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo/Properties/PublishProfiles/win10-x86.pubxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | FileSystem
5 | x86
6 | win10-x86
7 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\
8 | true
9 | False
10 | True
11 |
12 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Shared.Xamarin/TestCrashException.Serializable.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Runtime.Serialization;
6 |
7 | namespace Microsoft.AppCenter.Crashes
8 | {
9 | [Serializable]
10 | public partial class TestCrashException
11 | {
12 | ///
13 | /// Deserialization constructor. Not intended for public use.
14 | ///
15 | protected TestCrashException(SerializationInfo info, StreamingContext context) : base(info, context)
16 | {
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.WindowsDesktop/TestCrashException.Serializable.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Runtime.Serialization;
6 |
7 | namespace Microsoft.AppCenter.Crashes
8 | {
9 | [Serializable]
10 | public partial class TestCrashException
11 | {
12 | ///
13 | /// Deserialization constructor. Not intended for public use.
14 | ///
15 | protected TestCrashException(SerializationInfo info, StreamingContext context) : base(info, context)
16 | {
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test/Utils/Constants.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Utils
7 | {
8 | ///
9 | /// Various constants used by the SDK.
10 | ///
11 | public static partial class Constants
12 | {
13 | public static string AppCenterFilesDirectoryPath = "";
14 |
15 | public static string AppCenterDatabasePath = "Microsoft.AppCenter.Storage";
16 |
17 | public static string LocalAppData => Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo/Properties/PublishProfiles/win10-arm64.pubxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | FileSystem
5 | arm64
6 | win10-arm64
7 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\
8 | true
9 | False
10 | True
11 |
12 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet/Properties/PublishProfiles/win10-x64.pubxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | FileSystem
5 | x64
6 | win10-x64
7 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\
8 | true
9 | False
10 | True
11 |
12 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet/Properties/PublishProfiles/win10-x86.pubxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | FileSystem
5 | x86
6 | win10-x86
7 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\
8 | true
9 | False
10 | True
11 |
12 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Android/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 | using System.Runtime.InteropServices;
6 |
7 | [assembly: ComVisible(false)]
8 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
9 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet/Properties/PublishProfiles/win10-arm64.pubxml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | FileSystem
5 | arm64
6 | win10-arm64
7 | bin\$(Configuration)\$(TargetFramework)\$(RuntimeIdentifier)\publish\
8 | true
9 | False
10 | True
11 |
12 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.UWP/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Reflection;
5 | using System.Runtime.CompilerServices;
6 | using System.Runtime.InteropServices;
7 |
8 | [assembly: ComVisible(false)]
9 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.UWP, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Android/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 | using System.Runtime.InteropServices;
6 |
7 | [assembly: ComVisible(false)]
8 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
9 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Android/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.InteropServices;
5 | using System.Runtime.CompilerServices;
6 |
7 | [assembly: ComVisible(false)]
8 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Functional, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
9 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Windows/IngestionExceptions.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Ingestion;
5 | using System;
6 | using System.Collections.Generic;
7 | using System.Linq;
8 | using System.Text;
9 | using System.Threading.Tasks;
10 |
11 | namespace Microsoft.AppCenter
12 | {
13 | public class RecoverableIngestionException : IngestionException
14 | {
15 | public override bool IsRecoverable => true;
16 | }
17 |
18 | public class NonRecoverableIngestionException : IngestionException
19 | {
20 | public override bool IsRecoverable => false;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared/WrapperSdk.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | ///
7 | /// Contains information about App Center .NET SDK.
8 | ///
9 | public partial class WrapperSdk
10 | {
11 | ///
12 | /// Name of SDK reported in logs.
13 | ///
14 | public const string Name = "appcenter.xamarin";
15 |
16 | /* We can't use reflection for assemblyInformationalVersion on iOS with "Link All" optimization. */
17 | internal const string Version = "5.0.7-SNAPSHOT";
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Shared/DistributeDelegates.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Distribute
5 | {
6 | ///
7 | /// Release available callback.
8 | ///
9 | public delegate bool ReleaseAvailableCallback(ReleaseDetails releaseDetails);
10 |
11 | ///
12 | /// App will close callback.
13 | ///
14 | public delegate void WillExitAppCallback();
15 |
16 | ///
17 | /// No release available callback.
18 | ///
19 | public delegate void NoReleaseAvailableCallback();
20 | }
21 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Android/DependencyConfiguration.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | static partial class DependencyConfiguration
7 | {
8 | private static IHttpNetworkAdapter _httpNetworkAdapter;
9 | private static IHttpNetworkAdapter PlatformHttpNetworkAdapter
10 | {
11 | get => _httpNetworkAdapter;
12 | set
13 | {
14 | Android.DependencyConfiguration.HttpClient = new AndroidHttpClientAdapter(value);
15 | _httpNetworkAdapter = value;
16 | }
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.AndroidPlay/Transforms/Metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Release
6 | public
7 |
8 |
9 | Microsoft.AppCenter.Distribute.Android
10 |
11 |
--------------------------------------------------------------------------------
/cgmanifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "https://json.schemastore.org/component-detection-manifest.json",
3 | "Registrations": [
4 | {
5 | "component": {
6 | "type": "git",
7 | "git": {
8 | "repositoryUrl": "https://github.com/microsoft/appcenter-sdk-android.git",
9 | "commitHash": "453316ce5fee6d1a4d76f80587fd816e7185ff55"
10 | }
11 | }
12 | },
13 | {
14 | "component": {
15 | "type": "git",
16 | "git": {
17 | "repositoryUrl": "https://github.com/microsoft/appcenter-sdk-apple.git",
18 | "commitHash": "9308921a2f6ef828cf9fae898ea4f080a81cdf11"
19 | }
20 | }
21 | }
22 | ],
23 | "Version": 1
24 | }
--------------------------------------------------------------------------------
/scripts/update-app-secrets.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | # Replace app-secret's and tokens values in test MAUI app.
3 |
4 | # Usage:
5 | # ./scripts/update-app-secrets.sh
6 |
7 | # Constants for iOS and Android.
8 | declare -a platformConstants=(
9 | "MAUI_ANDROID_PROD"
10 | "MAUI_ANDROID_TARGET_TOKEN_PROD"
11 | "MAUI_IOS_PROD"
12 | "MAUI_IOS_TARGET_TOKEN_PROD")
13 |
14 | # File which should be changed.
15 | targetFile=("Apps/Contoso.MAUI.Demo/App.xaml.cs")
16 |
17 | echo "Insert secrets for MAUI app."
18 |
19 | # Update files from array.
20 | for constant in "${platformConstants[@]}"; do
21 | # Replace secret value from enviroment variables.
22 | sed -i '' "s/{$constant}/"${!constant}"/g" $targetFile
23 | done
24 |
--------------------------------------------------------------------------------
/scripts/distribute-release.sh:
--------------------------------------------------------------------------------
1 | # Copyright (c) Microsoft Corporation. All rights reserved.
2 | # Licensed under the MIT License.
3 |
4 | # Define default arguments.
5 | MANDATORY=""
6 | GROUP=""
7 | ENVIRONMENT=""
8 | PLATFORM=""
9 |
10 | # NOTE: For "--group", use '_' instead of spaces.
11 | for i in "$@"; do
12 | case $1 in
13 | -m|--mandatory) MANDATORY="-Mandatory=true" ;;
14 | -e|--environment) ENVIRONMENT="-Environment=$2"; shift ;;
15 | -p|--platform) PLATFORM="-Platform=$2"; shift ;;
16 | -g|--group) GROUP="-Group=$2"; shift ;;
17 | *) shift ;;
18 | esac
19 | shift
20 | done
21 |
22 | ./build.sh -s test-tools.cake -t="ReleaseApplication" $GROUP $MANDATORY $PLATFORM $ENVIRONMENT
23 |
--------------------------------------------------------------------------------
/scripts/git-auth.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # Copyright (c) Microsoft Corporation. All rights reserved.
4 | # Licensed under the MIT License.
5 |
6 | help() {
7 | echo "Usage: $0 "
8 | }
9 |
10 | if [ -z "$1" ]; then
11 | help
12 | exit 1
13 | fi
14 |
15 | github_access_token=$1
16 |
17 | git config --global url."https://api:$github_access_token@github.com/".insteadOf "https://github.com/"
18 | git config --global url."https://ssh:$github_access_token@github.com/".insteadOf "ssh://git@github.com/"
19 | git config --global url."https://git:$github_access_token@github.com/".insteadOf "git@github.com:"
20 | git config --global user.email "appcentersdk@microsoft.com"
21 | git config --global user.name "App Center"
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for the .NET SDK for App Center
4 | title: ''
5 | labels: feature request
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Is your feature request related to a problem? Please describe.**
11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12 |
13 | **Describe the solution you'd like**
14 | A clear and concise description of what you want to happen.
15 |
16 | **Describe alternatives you've considered**
17 | A clear and concise description of any alternative solutions or features you've considered.
18 |
19 | **Additional context**
20 | Add any other context or screenshots about the feature request here.
21 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Ingestion/IngestionException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Ingestion
7 | {
8 | public class IngestionException : AppCenterException
9 | {
10 | private const string DefaultMessage = "The ingestion operation failed";
11 |
12 | public virtual bool IsRecoverable => false;
13 |
14 | public IngestionException(string message) : base(message) { }
15 | public IngestionException(Exception innerException) : base(DefaultMessage, innerException) { }
16 | public IngestionException() : base(DefaultMessage) { }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/TimeHelper.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Utils
7 | {
8 | ///
9 | /// Utility for getting time information
10 | ///
11 | public static class TimeHelper
12 | {
13 | ///
14 | /// Gets the current time in milliseconds
15 | ///
16 | /// The current time in milliseconds
17 | public static long CurrentTimeInMilliseconds()
18 | {
19 | return DateTime.Now.Ticks / TimeSpan.TicksPerMillisecond;
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Windows/PropertyValidatorTest.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Windows.Shared.Utils;
5 | using Microsoft.VisualStudio.TestTools.UnitTesting;
6 |
7 | namespace Microsoft.AppCenter.Test.Windows
8 | {
9 | [TestClass]
10 | public class PropertyValidatorTest
11 | {
12 | [TestMethod]
13 | public void TestPropertyLimits()
14 | {
15 | Assert.Equals(20, PropertyValidator.MaxProperties);
16 | Assert.Equals(125, PropertyValidator.MaxPropertyKeyLength);
17 | Assert.Equals(125, PropertyValidator.MaxPropertyValueLength);
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Shared/UpdateTrack.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Distribute
7 | {
8 | ///
9 | /// Track to use for in-app updates.
10 | ///
11 | public enum UpdateTrack
12 | {
13 | ///
14 | /// Releases from the public group that don't require authentication.
15 | ///
16 | Public = 1,
17 |
18 | ///
19 | /// Releases from private groups that require authentication, also contain public releases.
20 | ///
21 | Private = 2
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/App.xaml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Apple/DependencyConfiguration.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Apple.Bindings;
5 |
6 | namespace Microsoft.AppCenter
7 | {
8 | static partial class DependencyConfiguration
9 | {
10 | private static IHttpNetworkAdapter _httpNetworkAdapter;
11 | private static IHttpNetworkAdapter PlatformHttpNetworkAdapter
12 | {
13 | get => _httpNetworkAdapter;
14 | set
15 | {
16 | MSACDependencyConfiguration.HttpClient = new AppleHttpClientAdapter(value);
17 | _httpNetworkAdapter = value;
18 | }
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.WindowsDesktop.Shared/AppCenterTest.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Xunit;
5 |
6 | namespace Microsoft.AppCenter.Test.WindowsDesktop
7 | {
8 | public class AppCenterTest
9 | {
10 | ///
11 | /// Verify configure with WindowsDesktop platform id
12 | ///
13 | [Fact]
14 | public void VerifyPlatformId()
15 | {
16 | var appClientId = AppCenter.GetSecretAndTargetForPlatform("windowsdesktop=6a367cda-2c0a-4fb0-bedf-f110bf4e338b", "windowsdesktop");
17 | Assert.Equal("6a367cda-2c0a-4fb0-bedf-f110bf4e338b", appClientId);
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Analytics.Test/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 | using System.Runtime.InteropServices;
6 |
7 | [assembly: ComVisible(false)]
8 | [assembly: Guid("c5dac35e-b902-4e24-a8f7-963ad0f85f7a")]
9 |
10 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Analytics.Test.Windows, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Shared/UserConfirmation.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Crashes
5 | {
6 | ///
7 | /// User confirmation options for whether to send crash reports.
8 | ///
9 | public enum UserConfirmation
10 | {
11 | ///
12 | /// Do not send the crash report
13 | ///
14 | DontSend,
15 |
16 | ///
17 | /// Send the crash report
18 | ///
19 | Send,
20 |
21 | ///
22 | /// Send all crash reports
23 | ///
24 | AlwaysSend
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo/App.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/Constants.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Utils
7 | {
8 | ///
9 | /// Various constants used by the SDK.
10 | ///
11 | public static partial class Constants
12 | {
13 | // Prefix for App Center application settings
14 | public const string KeyPrefix = "AppCenter";
15 |
16 | // Channel constants
17 | public const int DefaultTriggerCount = 50;
18 | public static readonly TimeSpan DefaultTriggerInterval = TimeSpan.FromSeconds(6);
19 | public const int DefaultTriggerMaxParallelRequests = 3;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet/App.xaml:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/IApplicationSettings.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Utils
5 | {
6 | ///
7 | /// Represents a store of persistent application settings that is behaves like a dictionary.
8 | ///
9 | public interface IApplicationSettings
10 | {
11 | // Returns the object corresponding to 'key'. If there is no such object, it creates one with the given default value, and returns that
12 | T GetValue(string key, T defaultValue = default(T));
13 | void SetValue(string key, object value);
14 | bool ContainsKey(string key);
15 | void Remove(string key);
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/Synchronization/StatefulMutexException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Utils.Synchronization
7 | {
8 | ///
9 | /// Exception thrown when a StatefulMutex cannot acquire a lock
10 | ///
11 | ///
12 | public class StatefulMutexException : AppCenterException
13 | {
14 | public StatefulMutexException(string message) : base(message)
15 | {
16 | }
17 |
18 | public StatefulMutexException(string message, Exception innerException) : base(message, innerException)
19 | {
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.WindowsDesktop/Utils/DeviceInformationHelperTest.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Threading.Tasks;
5 | using Microsoft.AppCenter.Utils;
6 | using Xunit;
7 |
8 | namespace Microsoft.AppCenter.Test.WindowsDesktop.Utils
9 | {
10 | public partial class DeviceInformationHelperTest
11 | {
12 | ///
13 | /// Verify sdk name in device information
14 | ///
15 | [Fact]
16 | public void VerifySdkName()
17 | {
18 | var device = Task.Run(() => new DeviceInformationHelper().GetDeviceInformationAsync()).Result;
19 | Assert.Equal("appcenter.winforms", device.SdkName);
20 | }
21 | }
22 | }
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Storage/StorageException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Storage
7 | {
8 | internal class StorageException : AppCenterException
9 | {
10 | private const string DefaultMessage = "The storage operation failed";
11 |
12 | public StorageException(string message) : base(message) { }
13 |
14 | public StorageException(string message, Exception innerException) : base(message, innerException) { }
15 |
16 | public StorageException(Exception innerException) : base(DefaultMessage, innerException) { }
17 |
18 | public StorageException() : base(DefaultMessage) { }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Windows/TestAppCenterService.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Channel;
5 |
6 | namespace Microsoft.AppCenter.Test.Windows
7 | {
8 | public class TestAppCenterService : AppCenterService
9 | {
10 | protected override string ChannelName => "test_service";
11 | public override string ServiceName => "TestService";
12 |
13 | public IChannelGroup PublicChannelGroup => ChannelGroup;
14 | public IChannel PublicChannel => Channel;
15 | public string PublicEnabledPreferenceKey => EnabledPreferenceKey;
16 | public bool PublicIsInactive => IsInactive;
17 | public string PublicChannelName => ChannelName;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Demo/Contoso.WinUI.Desktop.Demo/Constants.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Contoso.WinUI.Desktop.Demo
5 | {
6 | public class Constants
7 | {
8 | public static string KeyStorageMaxSize = "StorageMaxSize";
9 | public static string KeyUserId = "UserId";
10 | public static string KeyCountryCode = "CountryCode";
11 | public static string KeyDataResidencyRegion = "DataResidencyRegion";
12 | public static string KeyFileErrorAttachments = "FileErrorAttachments";
13 | public static string KeyTextErrorAttachments = "TextErrorAttachments";
14 | public static string KeyEnableManualSessionTracker = "EnableManualSessionTrackerKey";
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/UnhandledExceptionOccurredEventArgs.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Utils
7 | {
8 | ///
9 | /// Event argument type for UnhandledException event that is invoked by
10 | ///
11 | public class UnhandledExceptionOccurredEventArgs : EventArgs
12 | {
13 | public UnhandledExceptionOccurredEventArgs(Exception e)
14 | {
15 | Exception = e;
16 | }
17 |
18 | ///
19 | /// Gets the unhandled exception.
20 | ///
21 | public Exception Exception { get; }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinUI.Desktop.Puppet/Contoso.WinUI.Desktop.Puppet/Constants.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Contoso.WinUI.Desktop.Puppet
5 | {
6 | public class Constants
7 | {
8 | public static string KeyStorageMaxSize = "StorageMaxSize";
9 | public static string KeyUserId = "UserId";
10 | public static string KeyCountryCode = "CountryCode";
11 | public static string KeyDataResidencyRegion = "DataResidencyRegion";
12 | public static string KeyFileErrorAttachments = "FileErrorAttachments";
13 | public static string KeyTextErrorAttachments = "TextErrorAttachments";
14 | public static string KeyEnableManualSessionTracker = "EnableManualSessionTrackerKey";
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Analytics.Test.Windows/SessionTrackerFactory.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Analytics.Channel;
5 | using Microsoft.AppCenter.Channel;
6 | using Microsoft.AppCenter.Utils;
7 | using Moq;
8 |
9 | namespace Microsoft.AppCenter.Analytics.Test.Windows
10 | {
11 | public class SessionTrackerFactory : ISessionTrackerFactory
12 | {
13 | public Mock ReturningSessionTrackerMock = new Mock();
14 |
15 | public ISessionTracker CreateSessionTracker(IChannelGroup channelGroup, IChannel channel, IApplicationSettings applicationSettings)
16 | {
17 | return ReturningSessionTrackerMock.Object;
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Documentation/ContentLayout.content:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/AddPropertyContentPage.xaml.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Contoso.MAUI.Demo;
7 |
8 | public partial class AddPropertyContentPage
9 | {
10 | public event Action PropertyAdded;
11 |
12 | public AddPropertyContentPage()
13 | {
14 | InitializeComponent();
15 | }
16 |
17 | async void AddProperty(object sender, EventArgs e)
18 | {
19 | var addedProperty = new Property(NameEntry?.Text, ValueEntry?.Text);
20 | PropertyAdded?.Invoke(addedProperty);
21 | await Navigation.PopModalAsync();
22 | }
23 |
24 | async void Cancel(object sender, EventArgs e)
25 | {
26 | await Navigation.PopModalAsync();
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Shared/TestCrashException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Crashes
7 | {
8 | ///
9 | /// Exception type thrown for testing purposes. See .
10 | ///
11 | public partial class TestCrashException : Exception
12 | {
13 | const string CrashMessage = "Test crash exception generated by SDK";
14 |
15 | ///
16 | /// Initializes a new instance of the TestCrashException class with a predefined error message.
17 | ///
18 | public TestCrashException() : base(CrashMessage)
19 | {
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/Windows/app.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
11 | true/PM
12 | PerMonitorV2, PerMonitor
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/Tizen/tizen-manifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | maui-appicon-placeholder
7 |
8 |
9 |
10 |
11 | http://tizen.org/privilege/internet
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Shared.Windows/Utils/ErrorExceptionAndBinaries.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Collections.Generic;
5 | using Microsoft.AppCenter.Crashes.Ingestion.Models;
6 | using ModelException = Microsoft.AppCenter.Crashes.Ingestion.Models.Exception;
7 |
8 | namespace Microsoft.AppCenter.Crashes.Windows.Utils
9 | {
10 | ///
11 | /// This class is a data-only holder for the model exception and binary sent with error logs. A simple pair cannot be used because value tuples require an additional dependency in UWP.
12 | ///
13 | internal class ErrorExceptionAndBinaries
14 | {
15 | public ModelException Exception;
16 | public IList Binaries;
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Windows/Utils/MockApplicationSettingsFactory.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Utils;
5 | using Moq;
6 |
7 | namespace Microsoft.AppCenter.Test.Utils
8 | {
9 | public class MockApplicationSettingsFactory : IApplicationSettingsFactory
10 | {
11 | private readonly Mock _applicationSettingsMock;
12 |
13 | public MockApplicationSettingsFactory(Mock applicationSettingsMock)
14 | {
15 | _applicationSettingsMock = applicationSettingsMock;
16 | }
17 |
18 | public IApplicationSettings CreateApplicationSettings()
19 | {
20 | return _applicationSettingsMock.Object;
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Constants.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Contoso.MAUI.Demo;
5 |
6 | public static class Constants
7 | {
8 | public const string BingMapsAuthKey = "paste-key-here";
9 | public const string UserId = "userId";
10 | public const string UpdateTrackKey = "update-track";
11 | public const string AutomaticUpdateCheckKey = "automatic-update-check";
12 | public const string StorageMaxSize = "storage-max-size";
13 | public const string EnableManualSessionTracker = "enable-manual-session-tracker";
14 | public const string CountryCode = "country-code";
15 | public const string DataResidencyRegion = "data-residency-region";
16 | public const string EnabledForDebuggableBuild = "enabled-for-debuggable-build";
17 | }
18 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Windows/Channel/MockChannelGroupFactory.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Channel;
5 | using Microsoft.AppCenter.Ingestion.Http;
6 | using Moq;
7 |
8 | namespace Microsoft.AppCenter.Test.Channel
9 | {
10 | public class MockChannelGroupFactory : IChannelGroupFactory
11 | {
12 | private readonly Mock _channelGroupMock;
13 |
14 | public MockChannelGroupFactory(Mock channelGroupMock)
15 | {
16 | _channelGroupMock = channelGroupMock;
17 | }
18 |
19 | public IChannelGroup CreateChannelGroup(string appSecret, INetworkStateAdapter networkState)
20 | {
21 | return _channelGroupMock.Object;
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.WindowsDesktop/Microsoft.AppCenter.Crashes.WindowsDesktop.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1;net462;net472;net6.0-windows10.0.17763.0
5 | true
6 | false
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Documentation/Content/VersionHistory/v1.0.0.0.aml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Version [TODO: Version] was released on [TODO: Date].
6 |
7 |
8 |
9 |
10 | Changes in This Release
11 |
12 |
13 |
14 |
15 | [TODO: Add change items here]
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.WindowsDesktop/Microsoft.AppCenter.Analytics.WindowsDesktop.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netcoreapp3.1;net462;net472;net6.0-windows10.0.17763.0
5 | true
6 | false
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Reflection;
5 | using System.Runtime.CompilerServices;
6 | using System.Runtime.InteropServices;
7 |
8 | [assembly: AssemblyTitle("Microsoft.AppCenter.Test.UWP")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("Microsoft.AppCenter.Test.UWP")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 | [assembly: AssemblyMetadata("TargetPlatform","UAP")]
17 |
18 | // [assembly: AssemblyVersion("1.0.*")]
19 | [assembly: AssemblyVersion("1.0.0.0")]
20 | [assembly: AssemblyFileVersion("5.0.7.0")]
21 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/PropertiesContentPage.xaml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.UWP/Utils/IScreenSizeProvider.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Threading.Tasks;
6 |
7 | namespace Microsoft.AppCenter.Utils
8 | {
9 | ///
10 | /// In most UWP apps, the DefaultScreenSizeProvider will do, but some
11 | /// applications need to use different techniques to get the screen
12 | /// size (e.g., Unity).
13 | ///
14 | public interface IScreenSizeProvider
15 | {
16 | // Format must be "{Width}x{Height}"
17 | string ScreenSize { get; }
18 |
19 | // Wait until screen size is available (or definitely unavailable)
20 | Task WaitUntilReadyAsync();
21 |
22 | // Indicates the screen resolution has changed
23 | event EventHandler ScreenSizeChanged;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Channel/IChannelUnit.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Ingestion.Models;
5 | using System.Threading.Tasks;
6 |
7 | namespace Microsoft.AppCenter.Channel
8 | {
9 | ///
10 | /// Specification for a leaf channel that can enqueue logs, as opposed to groups.
11 | ///
12 | public interface IChannelUnit : IChannel
13 | {
14 | ///
15 | /// Enqueue a log for processing
16 | ///
17 | ///
18 | Task EnqueueAsync(Log log);
19 |
20 | ///
21 | /// Check if there are any pending logs in database and rigger ingestion if such logs are found.
22 | ///
23 | void CheckPendingLogs();
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Analytics.Test/Microsoft.AppCenter.Analytics.Test.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net472
5 | true
6 |
7 |
8 | true
9 | true
10 | ..\..\appcenter-public-key.snk
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Windows/Utils/UnhandledExceptionEventArgsTest.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Utils;
5 | using Microsoft.VisualStudio.TestTools.UnitTesting;
6 | using System;
7 |
8 | namespace Microsoft.AppCenter.Test.Windows.Utils
9 | {
10 | [TestClass]
11 | public class UnhandledExceptionEventArgsTest
12 | {
13 | ///
14 | /// Validate that Unhandled exception args saves correct exception
15 | ///
16 | [TestMethod]
17 | public void CheckExceptionReference()
18 | {
19 | Exception ex = new Exception();
20 | UnhandledExceptionOccurredEventArgs args =
21 | new UnhandledExceptionOccurredEventArgs(ex);
22 | Assert.AreSame(ex, args.Exception);
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/Tests/Contoso.Test.Functional.Droid/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinForms.Demo.DotNetCore/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | 0
13 |
14 |
15 | False
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinForms.Demo/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 0
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | False
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.UWP/Utils/NetworkStateTests.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using Microsoft.AppCenter.Ingestion.Http;
6 | using Microsoft.VisualStudio.TestTools.UnitTesting;
7 |
8 | namespace Microsoft.AppCenter.Test.UWP.Utils
9 | {
10 | [TestClass]
11 | public class NetworkStateTests
12 | {
13 | private NetworkStateAdapter _networkState;
14 |
15 | [TestInitialize]
16 | public void InitializeNetworkStateTest()
17 | {
18 | _networkState = new NetworkStateAdapter();
19 | }
20 |
21 | [TestMethod]
22 | public void NetWorkInterfaceThrowsExceptionCanBeHandled()
23 | {
24 | _networkState.IsNetworkAvailable = () => throw new Exception();
25 | Assert.IsFalse(_networkState.IsConnected);
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Windows/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Reflection;
5 | using System.Runtime.InteropServices;
6 |
7 | [assembly: AssemblyTitle("Microsoft.AppCenter.Test.Windows")]
8 | [assembly: AssemblyDescription("")]
9 | [assembly: AssemblyConfiguration("")]
10 | [assembly: AssemblyCompany("")]
11 | [assembly: AssemblyProduct("Microsoft.AppCenter.Test.Windows")]
12 | [assembly: AssemblyCopyright("Copyright © 2017")]
13 | [assembly: AssemblyTrademark("")]
14 | [assembly: AssemblyCulture("")]
15 |
16 | [assembly: ComVisible(false)]
17 |
18 | [assembly: Guid("e52c5d53-4485-4350-9f4e-aff85cc18fd7")]
19 |
20 | // [assembly: AssemblyVersion("1.0.*")]
21 | [assembly: AssemblyVersion("0.0.0.0")]
22 | [assembly: AssemblyFileVersion("5.0.7.0")]
23 | [assembly: AssemblyInformationalVersion("5.0.7-SNAPSHOT")]
24 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.WindowsDesktop/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Reflection;
5 | using System.Runtime.CompilerServices;
6 | using System.Runtime.InteropServices;
7 |
8 | [assembly: AssemblyTitle("Microsoft.AppCenter.Test.WindowsDesktop")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("Microsoft.AppCenter.Test.WindowsDesktop")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | [assembly: ComVisible(false)]
18 |
19 | [assembly: Guid("c4674357-efba-43aa-9db8-de62a3309eb6")]
20 |
21 | // [assembly: AssemblyVersion("1.0.*")]
22 | [assembly: AssemblyVersion("1.0.0.0")]
23 | [assembly: AssemblyFileVersion("5.0.7.0")]
24 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinForms.Puppet.DotNetCore/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | 0
13 |
14 |
15 | False
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinForms.Puppet/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | 0
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | False
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/Windows/App.xaml.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.UI.Xaml;
5 |
6 | // To learn more about WinUI, the WinUI project structure,
7 | // and more about our project templates, see: http://aka.ms/winui-project-info.
8 |
9 | namespace Contoso.MAUI.Demo.WinUI;
10 |
11 | ///
12 | /// Provides application-specific behavior to supplement the default Application class.
13 | ///
14 | public partial class App : MauiWinUIApplication
15 | {
16 | ///
17 | /// Initializes the singleton application object. This is the first line of authored code
18 | /// executed, and as such is the logical equivalent of main() or WinMain().
19 | ///
20 | public App()
21 | {
22 | this.InitializeComponent();
23 | }
24 |
25 | protected override MauiApp CreateMauiApp() => MauiProgram.CreateMauiApp();
26 | }
27 |
28 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Crashes.Test.Windows/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Reflection;
5 | using System.Runtime.InteropServices;
6 |
7 | [assembly: AssemblyTitle("Microsoft.AppCenter.Crashes.Test.Windows")]
8 | [assembly: AssemblyDescription("")]
9 | [assembly: AssemblyConfiguration("")]
10 | [assembly: AssemblyCompany("")]
11 | [assembly: AssemblyProduct("Microsoft.AppCenter.Crashes.Test.Windows")]
12 | [assembly: AssemblyCopyright("Copyright © 2017")]
13 | [assembly: AssemblyTrademark("")]
14 | [assembly: AssemblyCulture("")]
15 |
16 | [assembly: ComVisible(false)]
17 |
18 | [assembly: Guid("1f1dbe94-aaee-4a43-8586-ef8743672587")]
19 |
20 | // [assembly: AssemblyVersion("1.0.*")]
21 | [assembly: AssemblyVersion("0.0.0.0")]
22 | [assembly: AssemblyFileVersion("5.0.7.0")]
23 | [assembly: AssemblyInformationalVersion("5.0.7-SNAPSHOT")]
24 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Analytics.Test.Windows/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Reflection;
5 | using System.Runtime.InteropServices;
6 |
7 | [assembly: AssemblyTitle("Microsoft.AppCenter.Analytics.Test.Windows")]
8 | [assembly: AssemblyDescription("")]
9 | [assembly: AssemblyConfiguration("")]
10 | [assembly: AssemblyCompany("")]
11 | [assembly: AssemblyProduct("Microsoft.AppCenter.Analytics.Test.Windows")]
12 | [assembly: AssemblyCopyright("Copyright © 2017")]
13 | [assembly: AssemblyTrademark("")]
14 | [assembly: AssemblyCulture("")]
15 |
16 | [assembly: ComVisible(false)]
17 |
18 | [assembly: Guid("4cfbae12-d17f-49ff-b41d-c861eeb965c4")]
19 |
20 | // [assembly: AssemblyVersion("1.0.*")]
21 | [assembly: AssemblyVersion("0.0.0.0")]
22 | [assembly: AssemblyFileVersion("5.0.7.0")]
23 | [assembly: AssemblyInformationalVersion("5.0.7-SNAPSHOT")]
24 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Apple/CrashesUtils.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Text;
6 |
7 | namespace Microsoft.AppCenter.Crashes
8 | {
9 | internal static class CrashesUtils
10 | {
11 | internal static byte[] SerializeException(Exception exception)
12 | {
13 | return Encoding.UTF8.GetBytes(exception.ToString());
14 | }
15 |
16 | internal static string DeserializeException(byte[] exceptionBytes)
17 | {
18 | try
19 | {
20 | return Encoding.UTF8.GetString(exceptionBytes);
21 | }
22 | catch (Exception e)
23 | {
24 | AppCenterLog.Warn(Crashes.LogTag, "Failed to deserialize exception for client side inspection.", e);
25 | }
26 | return null;
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Android/Microsoft.AppCenter.Android.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net8.0-android
5 | 21.0
6 | false
7 | false
8 | true
9 | 8.0
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 | Jars\appcenter-release.aar
18 |
19 |
20 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Ingestion/Http/HttpIngestionException.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Ingestion.Http
7 | {
8 | public class HttpIngestionException : IngestionException
9 | {
10 | public string Method { get; set; }
11 | public Uri RequestUri { get; set; }
12 | public string RequestContent { get; set; }
13 | public int StatusCode { get; set; }
14 | public string ResponseContent { get; set; }
15 | public override bool IsRecoverable
16 | {
17 | get
18 | {
19 | var statusCode = (int)StatusCode;
20 | return statusCode >= 500 || statusCode == 408;
21 | }
22 | }
23 |
24 | public HttpIngestionException(string message) : base(message)
25 | {
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test/Ingestion/Http/NetworkStateAdapter.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Ingestion.Http
7 | {
8 | /*
9 | * This implementation offers a setter for IsConnected so that network changes can be simulated.
10 | */
11 | public class NetworkStateAdapter : INetworkStateAdapter
12 | {
13 | private bool _isConnected = true;
14 |
15 | public bool IsConnected
16 | {
17 | get { return _isConnected; }
18 | set
19 | {
20 | if (_isConnected == value)
21 | {
22 | return;
23 | }
24 | _isConnected = value;
25 | NetworkStatusChanged?.Invoke(this, EventArgs.Empty);
26 | }
27 | }
28 |
29 | public event EventHandler NetworkStatusChanged;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test/Microsoft.AppCenter.Test.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net472
5 | true
6 |
7 |
8 | true
9 | true
10 | ..\..\appcenter-public-key.snk
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/.github/PULL_REQUEST_TEMPLATE.md:
--------------------------------------------------------------------------------
1 |
9 |
10 | Things to consider before you submit the PR:
11 |
12 | * [ ] Has `CHANGELOG.md` been updated?
13 | * [ ] Are tests passing locally?
14 | * [ ] Are the files formatted correctly?
15 | * [ ] Did you add unit tests if this modifies the Windows code?
16 | * [ ] Did you test your change with either the sample apps that are included in the repository or with a blank app that uses your change?
17 |
18 | ## Description
19 |
20 | A few sentences describing the overall goals of the pull request.
21 |
22 | ## Related PRs or issues
23 |
24 | List related PRs and other issues.
25 |
26 | ## Misc
27 |
28 | Add what's missing, notes on what you tested, additional thoughts or questions.
29 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Views/TextAttachmentView.xaml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.WindowsDesktop.Shared/Microsoft.AppCenter.Test.WindowsDesktop.Shared.projitems:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
5 | true
6 | 09f38506-8def-431d-a749-df7e73a719f0
7 |
8 |
9 | Microsoft.AppCenter.Test.WindowsDesktop.Shared
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Demo/UserConfirmationDialog.xaml.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AppCenter.Crashes;
2 | using System.Windows;
3 |
4 | namespace Contoso.WPF.Demo
5 | {
6 | public partial class UserConfirmationDialog : Window
7 | {
8 | public UserConfirmationDialog()
9 | {
10 | InitializeComponent();
11 | }
12 |
13 | private void DontSendButton_Click(object sender, RoutedEventArgs e)
14 | {
15 | ClickResult = UserConfirmation.DontSend;
16 | DialogResult = true;
17 | }
18 |
19 | private void AlwaysSendButton_Click(object sender, RoutedEventArgs e)
20 | {
21 | ClickResult = UserConfirmation.AlwaysSend;
22 | DialogResult = true;
23 | }
24 |
25 | private void SendButton_Click(object sender, RoutedEventArgs e)
26 | {
27 | ClickResult = UserConfirmation.Send;
28 | DialogResult = true;
29 | }
30 |
31 | public UserConfirmation ClickResult { get; private set; }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Puppet/UserConfirmationDialog.xaml.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AppCenter.Crashes;
2 | using System.Windows;
3 |
4 | namespace Contoso.WPF.Puppet
5 | {
6 | public partial class UserConfirmationDialog : Window
7 | {
8 | public UserConfirmationDialog()
9 | {
10 | InitializeComponent();
11 | }
12 |
13 | private void DontSendButton_Click(object sender, RoutedEventArgs e)
14 | {
15 | ClickResult = UserConfirmation.DontSend;
16 | DialogResult = true;
17 | }
18 |
19 | private void AlwaysSendButton_Click(object sender, RoutedEventArgs e)
20 | {
21 | ClickResult = UserConfirmation.AlwaysSend;
22 | DialogResult = true;
23 | }
24 |
25 | private void SendButton_Click(object sender, RoutedEventArgs e)
26 | {
27 | ClickResult = UserConfirmation.Send;
28 | DialogResult = true;
29 | }
30 |
31 | public UserConfirmation ClickResult { get; private set; }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/scripts/appcenter-login.sh:
--------------------------------------------------------------------------------
1 | # Copyright (c) Microsoft Corporation. All rights reserved.
2 | # Licensed under the MIT License.
3 |
4 | # Download and install NPM if it is not already installed
5 | npm -v &>/dev/null
6 | if [ $? -ne 0 ]; then
7 | # Install npm
8 | echo "Installing npm..."
9 | brew install npm
10 | if [ $? -ne 0 ]; then
11 | echo "An error occured while downloading npm."
12 | exit 1
13 | fi
14 | fi
15 |
16 | # Is App Center CLI installed?
17 | npm list -g appcenter-cli >/dev/null
18 | if [ $? -ne 0 ]; then
19 | # Install App Center CLI
20 | echo "Installing App Center CLI..."
21 | npm install -g appcenter-cli
22 | if [ $? -ne 0 ]; then
23 | echo "An error occured while installing App Center CLI."
24 | exit 1
25 | fi
26 | fi
27 |
28 | # Log in to App Center
29 | echo "Logging in to App Center..."
30 | appcenter login --token "$APP_CENTER_API_TOKEN"
31 | if [ $? -ne 0 ]; then
32 | echo "An error occured while logging into App Center."
33 | exit 1
34 | fi
35 |
36 | exit 0
37 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Demo.DotNetCore/UserConfirmationDialog.xaml.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AppCenter.Crashes;
2 | using System.Windows;
3 |
4 | namespace Contoso.WPF.Demo.DotNetCore
5 | {
6 | public partial class UserConfirmationDialog : Window
7 | {
8 | public UserConfirmationDialog()
9 | {
10 | InitializeComponent();
11 | }
12 |
13 | private void DontSendButton_Click(object sender, RoutedEventArgs e)
14 | {
15 | ClickResult = UserConfirmation.DontSend;
16 | DialogResult = true;
17 | }
18 |
19 | private void AlwaysSendButton_Click(object sender, RoutedEventArgs e)
20 | {
21 | ClickResult = UserConfirmation.AlwaysSend;
22 | DialogResult = true;
23 | }
24 |
25 | private void SendButton_Click(object sender, RoutedEventArgs e)
26 | {
27 | ClickResult = UserConfirmation.Send;
28 | DialogResult = true;
29 | }
30 |
31 | public UserConfirmation ClickResult { get; private set; }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.UWP/Utils/ScreenSizeProviderBase.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Threading.Tasks;
6 |
7 | namespace Microsoft.AppCenter.Utils
8 | {
9 | public abstract class ScreenSizeProviderBase : IScreenSizeProvider
10 | {
11 | // Display height in pixels; -1 indicates unknown
12 | public abstract int Height { get; }
13 |
14 | // Display width in pixels; -1 indicates unkown
15 | public abstract int Width { get; }
16 |
17 | // Invoked when screen resolution changes (best-effort)
18 | public abstract event EventHandler ScreenSizeChanged;
19 |
20 | // Screen size
21 | public string ScreenSize
22 | {
23 | get { return Height == -1 || Width == -1 ? null : $"{Width}x{Height}"; }
24 | }
25 |
26 | // Waits until the screen size is available (or definitely unavailable)
27 | public abstract Task WaitUntilReadyAsync();
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Puppet.DotNetCore/UserConfirmationDialog.xaml.cs:
--------------------------------------------------------------------------------
1 | using Microsoft.AppCenter.Crashes;
2 | using System.Windows;
3 |
4 | namespace Contoso.WPF.Puppet.DotNetCore
5 | {
6 | public partial class UserConfirmationDialog : Window
7 | {
8 | public UserConfirmationDialog()
9 | {
10 | InitializeComponent();
11 | }
12 |
13 | private void DontSendButton_Click(object sender, RoutedEventArgs e)
14 | {
15 | ClickResult = UserConfirmation.DontSend;
16 | DialogResult = true;
17 | }
18 |
19 | private void AlwaysSendButton_Click(object sender, RoutedEventArgs e)
20 | {
21 | ClickResult = UserConfirmation.AlwaysSend;
22 | DialogResult = true;
23 | }
24 |
25 | private void SendButton_Click(object sender, RoutedEventArgs e)
26 | {
27 | ClickResult = UserConfirmation.Send;
28 | DialogResult = true;
29 | }
30 |
31 | public UserConfirmation ClickResult { get; private set; }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/IDeviceInformationHelper.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Threading.Tasks;
5 |
6 | namespace Microsoft.AppCenter.Utils
7 | {
8 | ///
9 | /// Represents an object that is able to retrieve hardware and software information about the device running the SDK.
10 | ///
11 | public interface IDeviceInformationHelper
12 | {
13 | ///
14 | /// Gets the device information asynchronously.
15 | ///
16 | /// Device object with fields populated appropriately
17 | Task GetDeviceInformationAsync();
18 |
19 | ///
20 | /// Gets the device information without blocking. This might be missing certain properties.
21 | ///
22 | /// Device object with fields populated appropriately
23 | Ingestion.Models.Device GetDeviceInformation();
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.Android/Microsoft.AppCenter.Analytics.Android.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net8.0-android
5 | 21.0
6 | false
7 | false
8 | true
9 | 8.0
10 |
11 |
12 |
13 |
14 |
15 |
16 | Jars\appcenter-analytics-release.aar
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/scripts/strong-named-sign-delay.cmd:
--------------------------------------------------------------------------------
1 | :: Copyright (c) Microsoft Corporation. All rights reserved.
2 | :: Licensed under the MIT License.
3 |
4 | :: Note: This script is used to skip a strong-naming check for Puppet apps.
5 |
6 | :: Usage in Admin mode:
7 | :: .\strong-named-sign-delay.cmd [action] [assembliesPath]
8 | :: Where:
9 | :: [action] - 'Vr' for register assemblies or 'Vu' for unregister assemblies.
10 | :: [assembliesPath] - path to assemblies (ex. bin\Release\).
11 |
12 | setlocal
13 | set action=%1
14 | set pathToFile=%2
15 |
16 | call "%VSAPPIDDIR%..\Tools\VsDevCmd.bat"
17 |
18 | call :registerOrUnregisterFiles %pathToFile%Microsoft.AppCenter.dll
19 | call :registerOrUnregisterFiles %pathToFile%Microsoft.AppCenter.Analytics.dll
20 | call :registerOrUnregisterFiles %pathToFile%Microsoft.AppCenter.Crashes.dll
21 | call :registerOrUnregisterFiles %pathToFile%Microsoft.AppCenter.Distribute.dll
22 | EXIT /B
23 |
24 | :registerOrUnregisterFiles
25 | echo "Start processing the file: %~1"
26 | if exist %~1 (
27 | sn -%action% "%~1"
28 | ) else (
29 | echo "File %~1 doesn't exist".
30 | )
31 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Android/ErrorReportCache.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Collections.Generic;
5 |
6 | namespace Microsoft.AppCenter.Crashes
7 | {
8 | using AndroidErrorReport = Android.Model.ErrorReport;
9 |
10 | static class ErrorReportCache
11 | {
12 | readonly static Dictionary cachedReports = new Dictionary();
13 |
14 | internal static ErrorReport GetErrorReport(AndroidErrorReport androidReport)
15 | {
16 | lock (cachedReports)
17 | {
18 | ErrorReport cachedReport;
19 | if (cachedReports.TryGetValue(androidReport.Id, out cachedReport))
20 | {
21 | return cachedReport;
22 | }
23 |
24 | var newErrorReport = new ErrorReport(androidReport);
25 | cachedReports[androidReport.Id] = newErrorReport;
26 | return newErrorReport;
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Shared.Windows/ErrorReport.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using Microsoft.AppCenter.Crashes.Ingestion.Models;
6 |
7 | namespace Microsoft.AppCenter.Crashes
8 | {
9 | ///
10 | /// Error report containing information about a particular crash.
11 | ///
12 | public partial class ErrorReport
13 | {
14 | ///
15 | /// Creates a new error report.
16 | ///
17 | /// The managed error log.
18 | /// The associated exception stack trace.
19 | public ErrorReport(ManagedErrorLog log, string stackTrace)
20 | {
21 | Id = log.Id.ToString();
22 | AppStartTime = new DateTimeOffset(log.AppLaunchTimestamp.Value);
23 | AppErrorTime = new DateTimeOffset(log.Timestamp.Value);
24 | Device = new Device(log.Device);
25 | StackTrace = stackTrace;
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.Android/Microsoft.AppCenter.Distribute.Android.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net8.0-android
5 | 21.0
6 | false
7 | false
8 | true
9 | 8.0
10 |
11 |
12 |
13 |
14 |
15 |
16 | Jars\appcenter-distribute-release.aar
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/MacCatalyst/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | UIDeviceFamily
6 |
7 | 1
8 | 2
9 |
10 | UIRequiredDeviceCapabilities
11 |
12 | arm64
13 |
14 | UISupportedInterfaceOrientations
15 |
16 | UIInterfaceOrientationPortrait
17 | UIInterfaceOrientationLandscapeLeft
18 | UIInterfaceOrientationLandscapeRight
19 |
20 | UISupportedInterfaceOrientations~ipad
21 |
22 | UIInterfaceOrientationPortrait
23 | UIInterfaceOrientationPortraitUpsideDown
24 | UIInterfaceOrientationLandscapeLeft
25 | UIInterfaceOrientationLandscapeRight
26 |
27 | XSAppIconAssets
28 | Assets.xcassets/appicon.appiconset
29 |
30 |
31 |
--------------------------------------------------------------------------------
/SDK/AppCenterDistribute/Microsoft.AppCenter.Distribute.AndroidPlay/Microsoft.AppCenter.Distribute.AndroidPlay.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net8.0-android
5 | 21.0
6 | false
7 | false
8 | true
9 | 8.0
10 |
11 |
12 |
13 |
14 |
15 |
16 | Jars\appcenter-distribute-play-release.aar
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Functional/RequestData.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Collections.Generic;
5 | using Newtonsoft.Json;
6 | using Newtonsoft.Json.Linq;
7 |
8 | namespace Microsoft.AppCenter.Test.Functional
9 | {
10 | public class RequestData
11 | {
12 | public string Uri { get; private set; }
13 | public string Method { get; private set; }
14 | public IDictionary Headers { get; private set; }
15 | public JObject JsonContent { get; private set; }
16 |
17 | public RequestData(string uri, string method, IDictionary headers, string jsonContent)
18 | {
19 | Uri = uri;
20 | Method = method;
21 | Headers = headers;
22 | try
23 | {
24 | JsonContent = JObject.Parse(jsonContent == null ? "{ }" : jsonContent);
25 | }
26 | catch (JsonReaderException)
27 | {
28 | JsonContent = new JObject();
29 | }
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Runtime.CompilerServices;
5 | using System.Runtime.InteropServices;
6 |
7 | [assembly: ComVisible(false)]
8 | [assembly: Guid("e76dc547-2b63-4911-971c-767587ebfab6")]
9 |
10 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Test.Windows, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
11 | [assembly: InternalsVisibleTo("Microsoft.AppCenter.Analytics.Test.Windows, PublicKey=002400000480000094000000060200000024000052534131000400000100010055c4e2f76a6f3430448b1fd5b9ced790181e698a86759ece168bd955efc4297c9f89a303204019a9d2e8e92d204ba87e4825b36f8ba08113dc7297dcebe3d2bc15fabeae1d8c71d69769adedbc37ba7e197efc537cac2d477772ab38c4d4ccee45ddf99ce4343e9b665b663280c4dae2520b508bc7de0faf1978934f094d68e3")]
12 |
--------------------------------------------------------------------------------
/Documentation/Content/VersionHistory/VersionHistory.aml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | The topics in this section describe the various changes made to the [TODO: Project Title] over the
6 | life of the project.
7 |
8 |
9 |
10 | Version History
11 |
12 | Select a version below to see a description of its changes.
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | [TODO: Add links to each specific version page]
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/IAppCenterService.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Channel;
5 |
6 | namespace Microsoft.AppCenter
7 | {
8 | ///
9 | /// Represents a module that provides a service through App Center.
10 | ///
11 | public interface IAppCenterService
12 | {
13 | ///
14 | /// Display name of the service
15 | ///
16 | string ServiceName { get; }
17 |
18 | ///
19 | /// Gets or sets whether the service is enabled
20 | ///
21 | bool InstanceEnabled { get; set; }
22 |
23 | ///
24 | /// Method that is called to signal start of service.
25 | ///
26 | /// The channel group to which the channel should be added
27 | /// The app secret of the current application
28 |
29 | void OnChannelGroupReady(IChannelGroup channelGroup, string appSecret);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.WindowsDesktop/Ingestion/Http/NetworkStateAdapter.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Net.NetworkInformation;
6 |
7 | namespace Microsoft.AppCenter.Ingestion.Http
8 | {
9 | public class NetworkStateAdapter : INetworkStateAdapter
10 | {
11 | public NetworkStateAdapter()
12 | {
13 | NetworkChange.NetworkAddressChanged += (sender, args) => NetworkStatusChanged?.Invoke(sender, args);
14 | }
15 |
16 | public bool IsConnected
17 | {
18 | get
19 | {
20 | try
21 | {
22 | return NetworkInterface.GetIsNetworkAvailable();
23 | }
24 | catch (Exception e)
25 | {
26 | AppCenterLog.Error(AppCenterLog.LogTag, "An error occurred while checking network state.", e);
27 | return false;
28 | }
29 | }
30 | }
31 |
32 | public event EventHandler NetworkStatusChanged;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Analytics.Test.Windows/Ingestion/Models/StartSessionLogTest.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using Microsoft.AppCenter.Analytics.Ingestion.Models;
6 | using Microsoft.VisualStudio.TestTools.UnitTesting;
7 | using Moq;
8 |
9 | namespace Microsoft.AppCenter.Test.Windows.Ingestion.Models
10 | {
11 | using Device = Microsoft.AppCenter.Ingestion.Models.Device;
12 |
13 | [TestClass]
14 | public class StartSessionLogTest
15 | {
16 | private readonly DateTime? Timestamp = null;
17 |
18 | ///
19 | /// Verify that instance is constructed properly.
20 | ///
21 | [TestMethod]
22 | public void TestInstanceConstruction()
23 | {
24 | var mockDevice = new Mock();
25 |
26 | StartSessionLog emptyLog = new StartSessionLog();
27 | StartSessionLog log = new StartSessionLog(mockDevice.Object, Timestamp);
28 |
29 | Assert.IsNotNull(emptyLog);
30 | Assert.IsNotNull(log);
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinForms.Demo.DotNetCore/Contoso.WinForms.Demo.DotNetCore.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | WinExe
5 | netcoreapp3.1
6 | true
7 | 5.0.7
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 | True
17 | True
18 | Settings.settings
19 |
20 |
21 |
22 |
23 | SettingsSingleFileGenerator
24 | Settings.Designer.cs
25 |
26 |
27 |
--------------------------------------------------------------------------------
/license.txt:
--------------------------------------------------------------------------------
1 | Visual Studio App Center SDK for .NET
2 |
3 | Copyright (c) Microsoft Corporation
4 |
5 | All rights reserved.
6 |
7 | MIT License
8 |
9 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the ""Software""), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
12 |
13 | THE SOFTWARE IS PROVIDED *AS IS*, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/Platforms/iOS/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | LSRequiresIPhoneOS
6 |
7 | UIDeviceFamily
8 |
9 | 1
10 | 2
11 |
12 | UIRequiredDeviceCapabilities
13 |
14 | arm64
15 |
16 | UISupportedInterfaceOrientations
17 |
18 | UIInterfaceOrientationPortrait
19 | UIInterfaceOrientationLandscapeLeft
20 | UIInterfaceOrientationLandscapeRight
21 |
22 | UISupportedInterfaceOrientations~ipad
23 |
24 | UIInterfaceOrientationPortrait
25 | UIInterfaceOrientationPortraitUpsideDown
26 | UIInterfaceOrientationLandscapeLeft
27 | UIInterfaceOrientationLandscapeRight
28 |
29 | XSAppIconAssets
30 | Assets.xcassets/appicon.appiconset
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Demo.DotNetCore/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | 0
19 |
20 |
21 | False
22 |
23 |
24 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Demo/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | 0
19 |
20 |
21 | False
22 |
23 |
24 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Puppet.DotNetCore/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | 0
19 |
20 |
21 | False
22 |
23 |
24 |
--------------------------------------------------------------------------------
/Apps/Contoso.WPF.Puppet/Properties/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | 0
19 |
20 |
21 | False
22 |
23 |
24 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Android/Microsoft.AppCenter.Crashes.Android.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | net8.0-android
5 | 21.0
6 | false
7 | false
8 | true
9 | 8.0
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 | Jars\appcenter-crashes-release.aar
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/AppCenter-SDK-Build-Mac-Mono.slnf:
--------------------------------------------------------------------------------
1 | {
2 | "solution": {
3 | "path": "AppCenter-Mac.sln",
4 | "projects": [
5 | "SDK\\AppCenter\\Microsoft.AppCenter.Android\\Microsoft.AppCenter.Android.Mono.csproj",
6 | "SDK\\AppCenter\\Microsoft.AppCenter.Apple\\Microsoft.AppCenter.Apple.Mono.csproj",
7 | "SDK\\AppCenterAnalytics\\Microsoft.AppCenter.Analytics.Android\\Microsoft.AppCenter.Analytics.Android.Mono.csproj",
8 | "SDK\\AppCenterAnalytics\\Microsoft.AppCenter.Analytics.Apple\\Microsoft.AppCenter.Analytics.Apple.Mono.csproj",
9 | "SDK\\AppCenterCrashes\\Microsoft.AppCenter.Crashes.Android\\Microsoft.AppCenter.Crashes.Android.Mono.csproj",
10 | "SDK\\AppCenterCrashes\\Microsoft.AppCenter.Crashes.Apple\\Microsoft.AppCenter.Crashes.Apple.Mono.csproj",
11 | "SDK\\AppCenterDistribute\\Microsoft.AppCenter.Distribute.Android\\Microsoft.AppCenter.Distribute.Android.Mono.csproj",
12 | "SDK\\AppCenterDistribute\\Microsoft.AppCenter.Distribute.AndroidPlay\\Microsoft.AppCenter.Distribute.AndroidPlay.Mono.csproj",
13 | "SDK\\AppCenterDistribute\\Microsoft.AppCenter.Distribute.Apple\\Microsoft.AppCenter.Distribute.Apple.Mono.csproj"
14 | ]
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/appcenter-post-clone.ps1:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | # Copyright (c) Microsoft Corporation. All rights reserved.
4 | # Licensed under the MIT License.
5 |
6 | echo "Executing post clone script in $pwd"
7 |
8 | $nugetFileName = "NuGet.config"
9 | $contentValue = "`n" +
10 | "`n" +
11 | " `n" +
12 | " `n" +
13 | " `n" +
14 | " `n" +
15 | " `n" +
16 | " `n" +
17 | " `n" +
18 | " `n" +
19 | " `n" +
20 | " `n" +
21 | " `n" +
22 | " `n" +
23 | " `n" +
24 | "`n"
25 |
26 | if (Test-Path $nugetFileName) {
27 | Remove-Item $nugetFileName
28 | }
29 | New-Item -Path . -Name $nugetFileName -Value $contentValue
30 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.WindowsDesktop.Shared/Microsoft.AppCenter.Test.WindowsDesktop.Shared.shproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 09f38506-8def-431d-a749-df7e73a719f0
5 | 14.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Apple/Device.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Apple.Bindings;
5 |
6 | namespace Microsoft.AppCenter
7 | {
8 | public partial class Device
9 | {
10 | public Device(MSACDevice device)
11 | {
12 | SdkName = device.SdkName;
13 | SdkVersion = device.SdkVersion;
14 | Model = device.Model;
15 | OemName = device.OemName;
16 | OsName = device.OsName;
17 | OsVersion = device.OsVersion;
18 | OsBuild = device.OsBuild;
19 | OsApiLevel = device.OsApiLevel == null ? 0 : device.OsApiLevel.Int32Value;
20 | Locale = device.Locale;
21 | TimeZoneOffset = device.TimeZoneOffset == null ? 0 : device.TimeZoneOffset.Int32Value;
22 | ScreenSize = device.ScreenSize;
23 | AppVersion= device.AppVersion;
24 | CarrierName = device.CarrierName;
25 | CarrierCountry = device.CarrierCountry;
26 | AppBuild = device.AppBuild;
27 | AppNamespace = device.AppNamespace;
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.UWP/Utils/DefaultApplicationSettings.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Windows.Storage;
5 |
6 | namespace Microsoft.AppCenter.Utils
7 | {
8 | public class DefaultApplicationSettings : IApplicationSettings
9 | {
10 | public T GetValue(string key, T defaultValue = default(T))
11 | {
12 | object result;
13 | var found = ApplicationData.Current.LocalSettings.Values.TryGetValue(key, out result);
14 | if (found)
15 | {
16 | return (T)result;
17 | }
18 | return defaultValue;
19 | }
20 |
21 | public void SetValue(string key, object value)
22 | {
23 | ApplicationData.Current.LocalSettings.Values[key] = value;
24 | }
25 |
26 | public bool ContainsKey(string key)
27 | {
28 | return ApplicationData.Current.LocalSettings.Values.ContainsKey(key);
29 | }
30 |
31 | public void Remove(string key)
32 | {
33 | ApplicationData.Current.LocalSettings.Values.Remove(key);
34 | }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/SDK/Directory.Build.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Microsoft Corp. All rights reserved.
5 | Microsoft Corporation
6 |
7 | 5.0.7-SNAPSHOT
8 | 5.0.7.0
9 |
10 | 0.0.0.0
11 |
12 | obj\$(MSBuildProjectName)
13 | $(DefaultItemExcludes);obj\**
14 |
15 | bin\$(Configuration)\$(TargetFramework)\$(AssemblyName).xml
16 |
17 | 1573;1591
18 |
19 | true
20 | true
21 | ..\..\..\appcenter-public-key.snk
22 |
23 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Windows/Ingestion/Http/HttpIngestionExceptionTest.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using Microsoft.AppCenter.Ingestion.Http;
5 | using Microsoft.VisualStudio.TestTools.UnitTesting;
6 |
7 | namespace Microsoft.AppCenter.Test.Windows.Ingestion.Http
8 | {
9 | [TestClass]
10 | public class HttpIngestionExceptionTest
11 | {
12 | [TestMethod]
13 | public void IsRecoverablePropertyTest()
14 | {
15 | HttpIngestionException exception = new HttpIngestionException("Test exception message");
16 |
17 | exception.StatusCode = (int) System.Net.HttpStatusCode.ServiceUnavailable;
18 | Assert.IsTrue(exception.IsRecoverable);
19 |
20 | exception.StatusCode = (int) System.Net.HttpStatusCode.RequestTimeout;
21 | Assert.IsTrue(exception.IsRecoverable);
22 |
23 | exception.StatusCode = 429;
24 | Assert.IsFalse(exception.IsRecoverable);
25 |
26 | exception.StatusCode = (int) System.Net.HttpStatusCode.InternalServerError;
27 | Assert.IsTrue(exception.IsRecoverable);
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/AddPropertyContentPage.xaml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Android/Device.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | using AndroidDevice = Android.Ingestion.Models.Device;
7 |
8 | public partial class Device
9 | {
10 | public Device(AndroidDevice device)
11 | {
12 | SdkName = device.SdkName;
13 | SdkVersion = device.SdkVersion;
14 | Model = device.Model;
15 | OemName = device.OemName;
16 | OsName = device.OsName;
17 | OsVersion = device.OsVersion;
18 | OsBuild = device.OsBuild;
19 | OsApiLevel = device.OsApiLevel == null ? 0 : device.OsApiLevel.IntValue();
20 | Locale = device.Locale;
21 | TimeZoneOffset = device.TimeZoneOffset == null ? 0 : device.TimeZoneOffset.IntValue();
22 | ScreenSize = device.ScreenSize;
23 | AppVersion= device.AppVersion;
24 | CarrierName = device.CarrierName;
25 | CarrierCountry = device.CarrierCountry;
26 | AppBuild = device.AppBuild;
27 | AppNamespace = device.AppNamespace;
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.WindowsDesktop/Ingestion/Http/HttpNetworkAdapter.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | #if NET462
5 | using System.Net;
6 | #else
7 | using System.Net.Http;
8 | using System.Security.Authentication;
9 | #endif
10 |
11 | namespace Microsoft.AppCenter.Ingestion.Http
12 | {
13 | ///
14 | public sealed partial class HttpNetworkAdapter
15 | {
16 | // Static initializer specific to windows desktop platforms.
17 | static HttpNetworkAdapter()
18 | {
19 | #if NET462
20 | // ReSharper disable once InvertIf
21 | if ((ServicePointManager.SecurityProtocol & SecurityProtocolType.Tls12) != SecurityProtocolType.Tls12)
22 | {
23 | ServicePointManager.SecurityProtocol |= SecurityProtocolType.Tls12;
24 | AppCenterLog.Debug(AppCenterLog.LogTag, "Enabled TLS 1.2 explicitly as it was disabled.");
25 | }
26 | #else
27 | HttpMessageHandlerOverride = () => new HttpClientHandler
28 | {
29 | SslProtocols = SslProtocols.Tls12
30 | };
31 | #endif
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.UWP/Utils/Constants.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.IO;
6 |
7 | namespace Microsoft.AppCenter.Utils
8 | {
9 | ///
10 | /// Various constants used by the SDK.
11 | ///
12 | public static partial class Constants
13 | {
14 | // Local Data.
15 | public static readonly string LocalAppData = global::Windows.Storage.ApplicationData.Current.LocalFolder.Path;
16 |
17 | // File Storage.
18 | public static readonly string AppCenterFilesDirectoryPath = Path.Combine(LocalAppData, "Microsoft", "AppCenter");
19 |
20 | // The database filename.
21 | public static readonly string AppCenterDatabaseFilename = "Microsoft.AppCenter.Storage";
22 |
23 | // The database file does not go in the main App Center files folder because it cannot be changed without migrating.
24 | public static readonly string AppCenterDatabasePath = Path.Combine(LocalAppData, AppCenterDatabaseFilename);
25 |
26 | // This value used for the mocking process of obfuscating username only.
27 | public static string UserName => null;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Demo/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Reflection;
5 | using System.Runtime.InteropServices;
6 |
7 | // General Information about an assembly is controlled through the following
8 | // set of attributes. Change these attribute values to modify the information
9 | // associated with an assembly.
10 | [assembly: AssemblyTitle("Contoso.UWP.Demo")]
11 | [assembly: AssemblyDescription("")]
12 | [assembly: AssemblyConfiguration("")]
13 | [assembly: AssemblyCompany("")]
14 | [assembly: AssemblyProduct("Contoso.UWP.Demo")]
15 | [assembly: AssemblyCopyright("Copyright © 2019")]
16 | [assembly: AssemblyTrademark("")]
17 | [assembly: AssemblyCulture("")]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("0.0.0.0")]
30 | [assembly: AssemblyFileVersion("5.0.7.0")]
31 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Reflection;
5 | using System.Runtime.InteropServices;
6 |
7 | // General Information about an assembly is controlled through the following
8 | // set of attributes. Change these attribute values to modify the information
9 | // associated with an assembly.
10 | [assembly: AssemblyTitle("Contoso.UWP.Puppet")]
11 | [assembly: AssemblyDescription("")]
12 | [assembly: AssemblyConfiguration("")]
13 | [assembly: AssemblyCompany("")]
14 | [assembly: AssemblyProduct("Contoso.UWP.Puppet")]
15 | [assembly: AssemblyCopyright("Copyright © 2017")]
16 | [assembly: AssemblyTrademark("")]
17 | [assembly: AssemblyCulture("")]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("0.0.0.0")]
30 | [assembly: AssemblyFileVersion("5.0.7.0")]
31 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.Functional/Config.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 |
6 | namespace Microsoft.AppCenter.Test.Functional
7 | {
8 | public static class Config
9 | {
10 | public const int ResultChannelPort = 16384;
11 |
12 | public const string DistributionGroupId = "00000000-0000-0000-0000-000000000000";
13 |
14 | public const string RequestId = "b627efb5-dbf7-4350-92e4-b6ac4dbd09b0";
15 |
16 | public const string Package = "com.contoso.test.functional";
17 |
18 | public static string ResolveAppSecret()
19 | {
20 | switch (Xamarin.Forms.Device.RuntimePlatform)
21 | {
22 | case Xamarin.Forms.Device.iOS:
23 | return "fe2bf05d-f4f9-48a6-83d9-ea8033fbb644";
24 | case Xamarin.Forms.Device.Android:
25 | return "987b5941-4fac-4968-933e-98a7ff29237c";
26 | case Xamarin.Forms.Device.UWP:
27 | return "5bce20c8-f00b-49ca-8580-7a49d5705d4c";
28 | default:
29 | return "fe2bf05d-f4f9-48a6-83d9-ea8033fbb644";
30 | }
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/Apps/Contoso.UWP.Puppet/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Tests/Microsoft.AppCenter.Test.WindowsDesktop.Shared/Utils/DeviceInformationHelperTest.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Threading.Tasks;
5 | using Microsoft.AppCenter.Utils;
6 | using Xunit;
7 |
8 | namespace Microsoft.AppCenter.Test.WindowsDesktop.Utils
9 | {
10 | public partial class DeviceInformationHelperTest
11 | {
12 | ///
13 | /// Verify device oem name in device information
14 | ///
15 | [Fact]
16 | public void VerifyDeviceOemName()
17 | {
18 | var device = Task.Run(() => new DeviceInformationHelper().GetDeviceInformationAsync()).Result;
19 | Assert.NotEqual(device.OemName, AbstractDeviceInformationHelper.DefaultSystemManufacturer);
20 | }
21 |
22 | ///
23 | /// Verify device model in device model.
24 | ///
25 | [Fact]
26 | public void VerifyDeviceModel()
27 | {
28 | var device = Task.Run(() => new DeviceInformationHelper().GetDeviceInformationAsync()).Result;
29 | Assert.NotEqual(device.Model, AbstractDeviceInformationHelper.DefaultSystemProductName);
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared/LogLevel.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | ///
7 | /// Log level threshold for logs emitted by the SDK.
8 | ///
9 | public enum LogLevel
10 | {
11 | ///
12 | /// SDK emits all possible level of logs.
13 | ///
14 | Verbose,
15 |
16 | ///
17 | /// SDK emits debug, info, warn, error and assert logs.
18 | ///
19 | Debug,
20 |
21 | ///
22 | /// SDK emits info, warn, error, and assert logs.
23 | ///
24 | Info,
25 |
26 | ///
27 | /// SDK emits warn, error, and assert logs.
28 | ///
29 | Warn,
30 |
31 | ///
32 | /// SDK error and assert logs.
33 | ///
34 | Error,
35 |
36 | ///
37 | /// Only assert logs are emitted by SDK.
38 | ///
39 | Assert,
40 |
41 | ///
42 | /// No log is emitted by SDK.
43 | ///
44 | None
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Device.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter
5 | {
6 | public partial class Device
7 | {
8 | ///
9 | /// Creates a public device model from an ingestion device model.
10 | ///
11 | /// The ingestion device model.
12 | public Device(Ingestion.Models.Device device)
13 | {
14 | SdkName = device.SdkName;
15 | SdkVersion = device.SdkVersion;
16 | Model = device.Model;
17 | OemName = device.OemName;
18 | OsName = device.OsName;
19 | OsVersion = device.OsVersion;
20 | OsBuild = device.OsBuild;
21 | OsApiLevel = device.OsApiLevel;
22 | Locale = device.Locale;
23 | TimeZoneOffset = device.TimeZoneOffset;
24 | ScreenSize = device.ScreenSize;
25 | AppVersion = device.AppVersion;
26 | CarrierName = device.CarrierName;
27 | CarrierCountry = device.CarrierCountry;
28 | AppBuild = device.AppBuild;
29 | AppNamespace = device.AppNamespace;
30 | }
31 | }
32 | }
--------------------------------------------------------------------------------
/SDK/AppCenterAnalytics/Microsoft.AppCenter.Analytics.UWP/Microsoft.AppCenter.Analytics.UWP.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | uap10.0.16299;net461
7 | false
8 |
9 |
10 | UAP
11 | 10.0.17763.0
12 | 10.0.16299.0
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/Apps/Contoso.MAUI.Demo/StartTypeUtils.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System;
5 | using System.Collections.Generic;
6 |
7 | namespace Contoso.MAUI.Demo;
8 |
9 | public enum StartType
10 | {
11 | AppCenter,
12 | OneCollector,
13 | Both
14 | };
15 |
16 | public class StartTypeUtils
17 | {
18 | public const StartType DefaultStartType = StartType.AppCenter;
19 | private const string StartTypeSettingKey = "startType";
20 |
21 | public static StartType GetPersistedStartType()
22 | {
23 | var startType = Preferences.Get(StartTypeSettingKey, null);
24 | if (Enum.TryParse(startType, out var persistedStartTypeEnum))
25 | {
26 | return persistedStartTypeEnum;
27 | }
28 | return DefaultStartType;
29 | }
30 |
31 | public static void SetPersistedStartType(StartType choice)
32 | {
33 | Preferences.Set(StartTypeSettingKey, choice.ToString());
34 | }
35 |
36 | public static IEnumerable GetStartTypeChoiceStrings()
37 | {
38 | foreach (var startTypeObject in Enum.GetValues(typeof(StartType)))
39 | {
40 | yield return startTypeObject.ToString();
41 | }
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Shared.Windows/Utils/Files/File.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.IO;
5 |
6 | namespace Microsoft.AppCenter.Utils.Files
7 | {
8 | ///
9 | /// This class wraps System.IO.FileInfo for the unit tests.
10 | ///
11 | public class File
12 | {
13 | private readonly FileInfo _underlyingFileInfo;
14 |
15 | ///
16 | /// Parameterless constructor needed for testing.
17 | ///
18 | public File()
19 | {
20 | }
21 |
22 | public File(string filePath) : this(new FileInfo(filePath))
23 | {
24 | }
25 |
26 | internal File(FileInfo fileInfo)
27 | {
28 | _underlyingFileInfo = fileInfo;
29 | }
30 |
31 | public virtual string Name => _underlyingFileInfo.Name;
32 |
33 | public virtual string FullName => _underlyingFileInfo.FullName;
34 |
35 | public virtual void Delete()
36 | {
37 | _underlyingFileInfo.Delete();
38 | }
39 |
40 | public virtual string ReadAllText()
41 | {
42 | return System.IO.File.ReadAllText(FullName);
43 | }
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/SDK/AppCenterCrashes/Microsoft.AppCenter.Crashes.Android/ErrorAttachmentLog.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | namespace Microsoft.AppCenter.Crashes
5 | {
6 | using AndroidErrorAttachmentLog = Android.Ingestion.Models.ErrorAttachmentLog;
7 |
8 | public partial class ErrorAttachmentLog
9 | {
10 | internal AndroidErrorAttachmentLog InternalAttachment { get; }
11 |
12 | ErrorAttachmentLog(AndroidErrorAttachmentLog androidAttachment)
13 | {
14 | InternalAttachment = androidAttachment;
15 | }
16 |
17 | static ErrorAttachmentLog PlatformAttachmentWithText(string text, string fileName)
18 | {
19 | AndroidErrorAttachmentLog androidAttachment = AndroidErrorAttachmentLog.AttachmentWithText(text, fileName);
20 | return new ErrorAttachmentLog(androidAttachment);
21 | }
22 |
23 | static ErrorAttachmentLog PlatformAttachmentWithBinary(byte[] data, string filename, string contentType)
24 | {
25 | AndroidErrorAttachmentLog androidAttachment = AndroidErrorAttachmentLog.AttachmentWithBinary(data, filename, contentType);
26 | return new ErrorAttachmentLog(androidAttachment);
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Apps/Contoso.WinForms.Demo/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft Corporation. All rights reserved.
2 | // Licensed under the MIT License.
3 |
4 | using System.Reflection;
5 | using System.Runtime.CompilerServices;
6 | using System.Runtime.InteropServices;
7 |
8 | // General Information about an assembly is controlled through the following
9 | // set of attributes. Change these attribute values to modify the information
10 | // associated with an assembly.
11 | [assembly: AssemblyTitle("Contoso.WinForms.Demo")]
12 | [assembly: AssemblyDescription("")]
13 | [assembly: AssemblyConfiguration("")]
14 | [assembly: AssemblyCompany("")]
15 | [assembly: AssemblyProduct("")]
16 | [assembly: AssemblyCopyright("")]
17 | [assembly: AssemblyTrademark("")]
18 | [assembly: AssemblyCulture("")]
19 |
20 | // Version information for an assembly consists of the following four values:
21 | //
22 | // Major Version
23 | // Minor Version
24 | // Build Number
25 | // Revision
26 | //
27 | // You can specify all the values or you can default the Build and Revision Numbers
28 | // by using the '*' as shown below:
29 | // [assembly: AssemblyVersion("1.0.*")]
30 | [assembly: AssemblyVersion("0.0.0.0")]
31 | [assembly: AssemblyFileVersion("5.0.7.0")]
32 | [assembly: AssemblyInformationalVersion("5.0.7")]
33 |
--------------------------------------------------------------------------------
/SDK/AppCenter/Microsoft.AppCenter.Android/Microsoft.AppCenter.Android.Mono.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | MonoAndroid10.0
5 | true
6 | Off
7 | class-parse
8 | true
9 |
10 |
11 | XA0113
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 | Designer
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 | Jars\appcenter-release.aar
29 |
30 |
31 |
--------------------------------------------------------------------------------