kurd_ads_sdk 0.0.2
kurd_ads_sdk: ^0.0.2 copied to clipboard
Kurd Ads Flutter SDK for ads and secure view tracking
example/lib/main.dart
import 'package:flutter/material.dart';
import 'package:kurd_ads_sdk/kurd_ads_sdk.dart';
void main() {
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: const HomeScreen(),
);
}
}
class HomeScreen extends StatefulWidget {
const HomeScreen({super.key});
@override
State<HomeScreen> createState() {
return _HomeScreenState();
}
}
class _HomeScreenState extends State<HomeScreen> {
bool loading = false;
Future<void> showKurdAds() async {
if (loading) {
return;
}
setState(() {
loading = true;
});
try {
final bool success = await KurdAds.show(
context: context,
// Developer API key
apiKey: 'rekan',
// Local development
baseUrl: 'http://172.20.10.3:63702/',
);
if (!mounted) {
return;
}
if (success) {
ScaffoldMessenger.of(context).showSnackBar(
const SnackBar(content: Text('Kurd Ads completed successfully.')),
);
}
} catch (e) {
if (!mounted) {
return;
}
ScaffoldMessenger.of(
context,
).showSnackBar(SnackBar(content: Text('Kurd Ads error: $e')));
} finally {
if (mounted) {
setState(() {
loading = false;
});
}
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('Developer App')),
body: Center(
child: ElevatedButton(
onPressed: loading ? null : showKurdAds,
child: loading
? const SizedBox(
width: 20,
height: 20,
child: CircularProgressIndicator(strokeWidth: 2),
)
: const Text('Show Ad'),
),
),
);
}
}