
When Firebase Dynamic Links shut down, thousands of developers found themselves scrambling for alternatives. But what if I told you there's a solution that doesn't just replace Firebase Dynamic Links - it completely reimagines what dynamic linking should be?
AppLink Has Entered the Chat
Meet AppLink by AppsOnAir, the dynamic linking service that's quietly revolutionizing how developers handle deep links, referrals, and user attribution. While everyone was mourning Firebase's departure, smart developers were already building with something better.
Why AppLink Is Different (And Why Developers Are Obsessed)
The Setup That Takes Minutes, Not Hours
Remember spending entire afternoons configuring Firebase Dynamic Links? AppLink changes the game with its intuitive dashboard that actually makes sense. The setup process is so smooth, you'll wonder why dynamic linking was ever complicated.
Real Analytics That Actually Help
AppLink doesn't just track clicks - it provides actionable insights. See exactly how your links perform across platforms, track conversion funnels, and understand your user journey like never before.
Flutter Integration That Just Works
Here's where AppLink truly shines. The Flutter integration is so clean and intuitive, it feels like it was built by Flutter developers, for Flutter developers.
Getting Started With AppLink in Flutter
Step 1: iOS Setup Made Simple
First, add your application ID to your info.plist file. This unique identifier connects your app to the AppLink service:
<key>AppsonairAppId</key>
<string>XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX</string>
Replace the placeholder with your actual application ID from the AppsOnAir dashboard.
For Custom URL Schemes: If you're using custom URL schemes (like myapp://), add this configuration:
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>YOUR_URL_NAME</string>
<key>CFBundleURLSchemes</key>
<array>
<string>YOUR_CUSTOM_URL_SCHEME</string>
</array>
</dict>
</array>
For Universal Links: Universal Links provide a seamless experience by opening your app directly when users tap links. Configure them like this:
<key>com.apple.developer.associated-domains</key>
<array>
<string>applinks:YOUR_DOMAIN</string>
</array>
Replace YOUR_DOMAIN with your actual domain name.
Step 2: Android Setup Made Simple
Android configuration involves a few key files, but each step serves a specific purpose.
AndroidManifest Configuration: Add your application ID as metadata in AndroidManifest.xml under the application tag:
<application>
...
<meta-data
android:name="AppsonairAppId"
android:value="********-****-****-****-************" />
</application>
Intent Filter Setup: Configure your main activity to handle AppLink redirects. For universal links:
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="your domain"
android:scheme="https" />
</intent-filter>
For custom URI schemes:
<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:host="open"
android:scheme="your scheme" />
</intent-filter>
Step 3: Add the Plugin
First, add the latest AppLink plugin to your pubspec.yaml:
dependencies:
appsonair_flutter_applink: ^1.2.1
Step 4: Import and Initialize
import 'package:appsonair_flutter_applink/appsonair_flutter_applink.dart';
import 'package:appsonair_flutter_applink/models/app_link_params.dart';
Step 5: Set Up the Core Instance
Create your AppLink instance:
final _appsonairFlutterApplinkPlugin = AppsonairFlutterApplink();
This single line gives you access to all AppLink functionality. No complex configuration files, no mysterious setup steps.
Step 6: Listen for Deep Links
@override
void initState() {
super.initState();
_appsonairFlutterApplinkPlugin.initializeAppLink().listen((event) {
setState(() {
_linkDetails = event.toString(); // Update UI with deep link
});
});
}
Your app now automatically handles incoming deep links. When users tap your AppLink, this listener fires and you can route them exactly where they need to go.
Step 7: Handle Referral Detection
_appsonairFlutterApplinkPlugin.onReferralLinkDetected().listen((event) {
setState(() {
_linkDetails = event.toString(); // Update UI with referral data
});
});
Referral tracking just became effortless. Track who's sharing your app and reward them accordingly.
Creating Your First AppLink
Here's where AppLink shows its true power:
Future<void> createLink() async {
try {
var data = await _appsonairFlutterApplinkPlugin.createAppLink(
appLinkParams: AppLinkParams(
url: 'https://appsonair.com',
name: 'AppsOnAir',
urlPrefix: 'YOUR_DOMAIN_NAME',
shortId: shortId, // Optional: auto-generated if not provided
socialMeta: SocialMeta(
title: 'link title',
description: 'link description',
imageUrl: 'https://image.png',
),
androidFallbackUrl: 'https://play.google.com',
iosFallbackUrl: 'https://appstore.com',
isOpenInAndroidApp: true,
isOpenInBrowserAndroid: false,
isOpenInIosApp: true,
isOpenInBrowserApple: false,
),
);
String link = data.toString(); // Your link is ready!
} on PlatformException {
// Handle errors gracefully
}
}
What Makes This Special
- Social Media Ready: The socialMeta automatically generates beautiful previews for Twitter, Facebook, and LinkedIn
- Platform Intelligence: Different behaviour for Android and iOS users
- Fallback Protection: Users without your app get directed to the right store
- Custom Domains: Use your own domain for branded links
Advanced Features That Set AppLink Apart
Referral Tracking Made Simple
TextButton(
onPressed: () async {
try {
var data = await _appsonairFlutterApplinkPlugin.getReferralInfo();
setState(() {
_linkDetails = data.toString();
});
} on PlatformException catch (e) {
log(e.toString());
}
},
child: const Text("Get Referral Link"),
)
Track referrals, measure viral growth, and understand your user acquisition funnel with one simple method call.
The Dashboard That Changes Everything
AppLink's web dashboard puts you in complete control:
- Real-time Analytics: See clicks, conversions, and user paths as they happen
- Team Collaboration: Share access with your team.
The Technical Advantages
- No Configuration Hell: One plugin, clear documentation, instant results
- Better Performance: Links resolve faster than Firebase ever did
- More Reliable: 99.9% uptime SLA with global CDN distribution
- Future-Proof: Regular updates and new features, not abandonment
Common Migration Patterns
From Firebase Dynamic Links
If you're migrating from Firebase, AppLink handles the same use cases but better:
- Deep Linking: More reliable, faster resolution
- Social Sharing: Better preview generation
- Analytics: More detailed, actionable insights
- Custom Domains: Easier setup, more flexible
For New Projects
Starting fresh? AppLink should be your first choice:
- Clean Flutter integration
- Comprehensive documentation
- Active development and support
- Pricing that scales with your success
Best Practices for AppLink Success
1. Design Your Link Structure
Plan your URL structure before creating links. Use meaningful shortIds for important links.
2. Optimize Social Previews
Great social meta tags can increase click-through rates by 300%. Invest time in good titles, descriptions, and images.
3. Test Across Platforms
AppLink handles iOS and Android differently. Test your flow on both platforms before launch.
4. Monitor Your Analytics
Use AppLink's dashboard to understand user behaviour and optimize your funnel.
The Future of Dynamic Linking
AppLink represents more than just a Firebase replacement - it's a glimpse into the future of user attribution and deep linking. With features like advanced analytics, team collaboration tools, and enterprise-grade reliability, AppLink is building the infrastructure that modern apps need.
Ready to Make the Switch?
The Firebase Dynamic Links era is over. The AppLink era has begun.
Your users deserve reliable deep links. Your business deserves accurate attribution. Your development team deserves tools that just work.
AppLink delivers all three.
Start building with AppLink today and discover why developers are calling it "the deep linking solution we've been waiting for."
Ready to experience AppLink for yourself? Visit AppsOnAir and see why thousands of developers are making the switch from Firebase Dynamic Links to AppLink.