chottu_link 1.0.19 copy "chottu_link: ^1.0.19" to clipboard
chottu_link: ^1.0.19 copied to clipboard

Easily add short links and deep linking to your app with quick setup, fast performance, and simple, cross-platform APIs.

example/lib/main.dart

import 'package:chottu_link/chottu_link.dart';
import 'package:chottu_link/dynamic_link/cl_dynamic_link_behaviour.dart';
import 'package:chottu_link/dynamic_link/cl_dynamic_link_parameters.dart';
import 'package:flutter/material.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await ChottuLink.init(apiKey: "your_api_key");
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  // This widget is the root of your application.
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
      ),
      home: const MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key});

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  String? generatedLink;

  void generateLink() {
    ChottuLink.createDynamicLink(
      parameters: CLDynamicLinkParameters(
        link: Uri.parse("https://www.example.com"),
        domain: "yourApp.chottu.link",
        iosBehaviour: CLDynamicLinkBehaviour.app,
        androidBehaviour: CLDynamicLinkBehaviour.app,
      ),
      onSuccess: (link) {
        setState(() {
          generatedLink = link;
        });
        debugPrint("Generated Link : $link");
      },
      onError: (error) {
        debugPrint("Error : ${error.message}");
      },
    );
  }

  @override
  void initState() {
    super.initState();
    ChottuLink.onLinkReceived.listen((link) {
      debugPrint("Link received : $link");
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        backgroundColor: Theme.of(context).colorScheme.inversePrimary,
        title: Text("ChottuLink Demo"),
      ),
      body: Center(
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.center,
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            ElevatedButton(
              onPressed: () {
                generateLink();
              },
              child: Text("Create Link"),
            ),
            Visibility(
              visible: generatedLink != null && generatedLink != "",
              child: Text(
                "Link created\n$generatedLink",
                textAlign: TextAlign.center,
              ),
            ),
          ],
        ),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }
}
6
likes
150
points
2.02k
downloads

Publisher

verified publisherchottulink.com

Weekly Downloads

Easily add short links and deep linking to your app with quick setup, fast performance, and simple, cross-platform APIs.

Homepage

Documentation

API reference

License

unknown (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on chottu_link

Packages that implement chottu_link