This is the public repo of the mParticle UWP SDK. The SDK is designed for use in Xbox and other UWP devices. This repo contains two core projects, respective test projects, and a sample UWP app:
mParticle.Sdk.UWP: Universal Windows class library for UWP appsmParticle.Sdk.Core: Underlying .NET Standard class library implementing the mParticle HTTP APImParticle.Sdk.UWP.ExampleApp: Example UWP app implementing the SDK
mParticle.Sdk.UWP is available via NuGet.
Initialize the SDK within the OnLaunched Application lifecycle method:
sealed partial class App : Application
{
protected override void OnLaunched(LaunchActivatedEventArgs launchArgs)
{
// Create an Identity Request:
// The SDK will automatically make an Identify() request during initialization,
// if you know identities of the current-user, you should provide them.
// Otherwise, the SDK will use the Identities of the most recent user.
var identifyRequest = IdentityApiRequest.EmptyUser()
.CustomerId("foo")
.Email("bar")
.Build();
// Create an MParticleOptions object:
// You must at least provide an mParticle workspace key and secret
MParticleOptions options =
MParticleOptions.Builder(apiKey: "REPLACE ME", apiSecret: "REPLACE ME")
.IdentifyRequest(identifyRequest)
.LaunchArgs(launchArgs)
.Logger(new ExampleConsoleLogger())
.Build();
// Initialize the mParticle SDK:
// You must do this prior to calling MParticle.Instance
var task = MParticle.StartAsync(options);
HandleIdentityTaskAsync(task);
}
}See the MParticleOptions class definition and the example app for all SDK customization options.
A reference to the SDK and its API is available statically via MParticle.Instance. You must initialize the SDK prior to accessing this reference.
var customEvent = CustomEvent.Builder("Example event name")
.CustomAttributes(dictionary)
.Type(CustomEventType.Navigation)
.Build();
MParticle.Instance.LogEvent(customEvent);MParticle.Instance.LogScreen("Example screen name");See the app below for an example implementation: