> For the complete documentation index, see [llms.txt](https://docs.hyphen.at/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hyphen.at/android/quick-start.md).

# Quick Start

Start by Using Hyphen Android SDK

## Create an App in the Dashboard

You need to create an app in the [Hyphen Dashboard](https://hyphen.at/dashboard/new) before using Hyphen SDK. After creating an app, an app secret will be issued. The app secret is required to initialize the SDK.

## Install the SDK using Gradle

We recommend Gradle to install our SDK.

{% tabs %}
{% tab title="build.gradle" %}
Edit `build.gradle` of your app level module to add Hyphen SDK.

```gradle
implementation "at.hyphen:android-sdk-core:1.0.0-alpha06"
implementation "at.hyphen:android-sdk-authenticate:1.0.0-alpha06"
implementation "at.hyphen:android-sdk-networking:1.0.0-alpha06"
implementation "at.hyphen:android-sdk-ui:1.0.0-alpha06"
implementation "at.hyphen:android-sdk-flow:1.0.0-alpha06"
```

{% endtab %}

{% tab title="build.gradle.kts" %}
Edit `build.gradle.kts` of your app level module to add Hyphen SDK.

```kotlin
implementation("at.hyphen:android-sdk-core:1.0.0-alpha06")
implementation("at.hyphen:android-sdk-authenticate:1.0.0-alpha06")
implementation("at.hyphen:android-sdk-networking:1.0.0-alpha06")
implementation("at.hyphen:android-sdk-ui:1.0.0-alpha06")
implementation("at.hyphen:android-sdk-flow:1.0.0-alpha06")
```

{% endtab %}
{% endtabs %}

## Firebase Configuration

Need your Firebase project to use Hyphen SDK. After enabling Google Authenticate and Push Messaging in your Firebase project, complete the Firebase setup through the `google-services.json` file.&#x20;

Please read the link below to set up Firebase.

<https://firebase.google.com/docs/android/setup>

## Configuring the SDK

### Declaring Permission

The following permissions are required to use the Hyphen SDK. Insert the code snippet below your `AndroidManifest.xml`.

<pre class="language-xml"><code class="lang-xml"><strong>&#x3C;!-- Required for hyphen networking (communicate with hyphen api server / flow network) -->
</strong><strong>&#x3C;uses-permission android:name="android.permission.INTERNET" />
</strong><strong>
</strong><strong>&#x3C;!-- Required for signing with device key -->
</strong>&#x3C;uses-permission android:name="android.permission.USE_BIOMETRIC" />

&#x3C;!-- Required for 2fa / transaction request notifications -->
&#x3C;uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
</code></pre>

### Register Hyphen Activity

SDK has its own activity to handle 2FA authenticate, transaction requests. Register the activity in your `AndroidManifest.xml`.

<pre class="language-xml"><code class="lang-xml"><strong>&#x3C;activity
</strong>    android:name="at.hyphen.android.sdk.ui.twofactor.Hyphen2FAActivity"
    android:exported="true" />
</code></pre>

### Initialize SDK

Insert the code below into the `onCreate` area of the class that inherited the `Application` used within the app.

{% tabs %}
{% tab title="\[YourActivityName]Activity.kt" %}

```kotlin
import at.hyphen.android.sdk.core.Hyphen

class MainActivity : Application() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        
        // ... 
        
        Hyphen.initialize(context = this)
        Hyphen.appSecret = "<YOUR-APP-SECRET>"
        Hyphen.network = Hyphen.NetworkType.TESTNET // or MAINNET
    }
}
```

{% endtab %}
{% endtabs %}
