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.
    );
  }
}
10
likes
150
points
2.52k
downloads

Documentation

API reference

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

License

unknown (license)

Dependencies

flutter, plugin_platform_interface

More

Packages that depend on chottu_link

Packages that implement chottu_link