> For the complete documentation index, see [llms.txt](https://pallet-1.gitbook.io/pallet-white-paper/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://pallet-1.gitbook.io/pallet-white-paper/developers/2-wallet-sdk-integration/2.1-flutter-sdk/develop-guide.md).

# Develop Guide

## Wallet Pre Configuration

### Android Configuration

1.Configure in AndroidManifest.xml

```
<activity android:name="clancey.simpleauth.simpleauthflutter.SimpleAuthCallbackActivity" android:exported="true">
    <intent-filter android:label="Pallet">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="db-feuuw50lyg85b3b" />
        <data android:scheme="com.googleusercontent.apps.312636396063-4vauh4vqdodasb7afkgvmrnldfm00ffj"/>
    </intent-filter>
</activity>
```

2.Initialization in MainActivity

```
class MainActivity: ThrioFlutterFragmentActivity() {
    init {
        System.loadLibrary("TrustWalletCore")
    }
    ...
}
```

### iOS Configuration

1. Add source config in Podfile

```
source 'git@github.com:Pallet-Pte/specs.git'
```

## Step 1: Add dependency in pubspec.yaml

```
pallet_lite:
    hosted: https://jfrog.infra.ww5sawfyut0k.bitsvc.io/artifactory/api/pub/pallet-pub-prod-virtual/
    version: 1.0.6

  pallet:
    hosted: https://jfrog.infra.ww5sawfyut0k.bitsvc.io/artifactory/api/pub/pallet-pub-prod-virtual/
    version: 1.4.4
```

## Step 2: Register Pallet Module in module.dart

```
class Module with ThrioModule, ModuleJsonDeserializer, ModuleJsonSerializer, ModuleParamScheme {
  @override
  void onModuleRegister(final ModuleContext moduleContext) {
    /// Set delegate for Pallet
    bv.PalletModule().setPalletDelegate(PalletDelegateImpl(moduleContext));
    /// Set rootNavigator
    bv.PalletModule().setRootNavigatorKey(RouteRegistry.rootNavigatorKey);
    /// Register Pallet Module
    registerModule(bv.Module(),moduleContext);
  }

  @override
  void onParamSchemeRegister(final ModuleContext moduleContext) {}

  @override
  void onJsonSerializerRegister(final ModuleContext moduleContext) {}

  @override
  void onJsonDeserializerRegister(final ModuleContext moduleContext) {}
}

```

## Step 3: Init Pallet Wallet SDK

```
PalletModule().ensureInited(null);
```

## Step 4: Invoke Wallet APIs when need

```
/// Enter the wallet home page
PalletModule().enterPalletHome(context);

/// Enter the wallet crate page
PalletModule().gotoCreateWallet(context);
```

More API references  bridge-layer-api
