We integrated Appsflyer Dynamic Links into our app to enable seamless user redirection based on context. These smart links help track installs, open the app with specific content, and provide a fallback experience when the app isn’t installed. With deep linking and deferred deep linking, users are directed to the right screen whether they already have the app or not, improving both engagement and conversion rates.
Requirement
- Cirilla
v4.2.6
or above
Configure App Builder
- Product Detail ( image )
- Open the drop-down menu on the menu bar.
- Select Product Detail.
- Disable dynamic link
- Post Detail ( image )
- Open the drop-down menu on the menu bar.
- Select Product Detail.
- Disable dynamic link
Configure source code
Step 1:
Open file: cirilla/pubspec.yaml
.Here you need to uncomment code
Change
# Flutter Appsflyer Plugin
# appsflyer_sdk: ^6.16.2
To
# Flutter Appsflyer Plugin
appsflyer_sdk: ^6.16.2
Then save the file and run the command “flutter pub get” in the cirilla folder
Note: for ios you need to run the additional command “pod install” in the cirilla/ios folder
Step 2:
Open file: cirilla/lib/register_service/register_service.dart
Replace
export 'appsflyer/test_appsflyer.dart';
To
export 'appsflyer/appsflyer_service.dart';
Step 3:
Open file: cirilla/lib/register_service/appsflyer/appsflyer_service.dart
Add
- urlSchemes
- afDevKey ( image )
- appId ( App store connect => Select App => Distribution => App Information => Get Apple ID )
- appInviteOneLink ( image )
Step 4:
Open file: cirilla/ios/Runner/Runner.entitlements
Change `applinks:appcheap.onelink.me` to your OneLink Management

Open file: cirilla/ios/Runner/Info.plist
Add code: xxxxxxxxxx is the urlSchemes in step 3
<dict>
<key>CFBundleURLName</key>
<string>URL schemes</string>
<key>CFBundleURLSchemes</key>
<array>
<string>xxxxxxxxxx</string>
</array>
</dict>
Step 5:
Open file: cirilla/android/app/src/main/AndroidManifest.xml
Change `android:host=”appcheap.onelink.me”` to your OneLink Management
Add code: xxxxxxxxxx is the urlSchemes in step 3
<!-- Deep link URI scheme -->
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="xxxxxxxxxx" />
</intent-filter>