import {Fragment} from 'react'; import ExternalLink from 'sentry/components/links/externalLink'; import List from 'sentry/components/list/'; import ListItem from 'sentry/components/list/listItem'; import {Layout, LayoutProps} from 'sentry/components/onboarding/gettingStartedDoc/layout'; import {ModuleProps} from 'sentry/components/onboarding/gettingStartedDoc/sdkDocumentation'; import {StepType} from 'sentry/components/onboarding/gettingStartedDoc/step'; import {ProductSolution} from 'sentry/components/onboarding/productSelection'; import {t, tct} from 'sentry/locale'; interface StepsParams { dsn: string; hasPerformance: boolean; hasProfiling: boolean; sourcePackageRegistries?: ModuleProps['sourcePackageRegistries']; } // Configuration Start export const steps = ({ dsn, sourcePackageRegistries, hasPerformance, hasProfiling, }: StepsParams): LayoutProps['steps'] => [ { title: t('Auto-Install'), description: (
{tct(
'Add Sentry automatically to your app with the [wizardLink:Sentry wizard] (call this inside your project directory).',
{
wizardLink: (
,
}
)}
,
}
)}
,
gitignore:
,
}
)}
{tct(
'Alternatively, you can also [manualSetupLink:set up the SDK manually]. [stepsBelow: You can skip the steps below when using the wizard].',
{
manualSetupLink: (
{tct(
'Add the [sagpLink:Sentry Android Gradle plugin] to your [app:app] module:',
{
sagpLink: (
,
}
)}
{tct(
'Configuration is done via the application [manifest: AndroidManifest.xml]. Under the hood Sentry uses a [provider:ContentProvider] to initialize the SDK based on the values provided below. This way the SDK can capture important crashes and metrics right from the app start.',
{
manifest: ,
provider:
,
}
)}
{t("Here's an example config which should get you started:")}
{tct(
"This snippet contains an intentional error and can be used as a test to make sure that everything's working as expected. You can add it to your app's [mainActivity: MainActivity].",
{
mainActivity: ,
}
)}