web-dev-qa-db-fra.com

Quelqu'un peut-il me dire comment ouvrir une autre application à l'aide de Flutter?

Je veux ouvrir un groupe de liens d'application musicale en utilisant des données de liens que j'ai dans Firebase. Je veux ouvrir, Amazonprimemuseic, Ganna, Spotify, Wynk, Jiosavaan pour en nommer certains.

Widget buildResultCard(data) {
  List items = [Text(data['Ganna']),
    IconButton(icon:Icon(Icons.all_inclusive),
      onPressed: ()=> {Text("Ganna")}
    ),

    Text(data['Wynk']),
    IconButton(icon:Icon(Icons.all_inclusive),
      onPressed: ()=> {Text("Ganna")}
    ),

    Text(data['JioSavaan']),
    IconButton(icon:Icon(Icons.all_inclusive),
      onPressed: ()=> {Text("Ganna")}
    ),

    Text(data['PrimeMusic']),
    IconButton(icon:Icon(Icons.all_inclusive),
      onPressed: ()=> {Text("Ganna")}
    )
  ];

  return ListView.builder(
    padding: EdgeInsets.only(top: 20),
    itemCount: items.length,
    itemBuilder: (BuildContext context, int index) {
      return items[index];
    },
  );
}

lorsque je touche le bouton de la liste, il doit ouvrir l'application particulière pour laquelle le lien est, par exemple pour Amazonprimemusic Link, il devrait ouvrir l'application Musique Amazon.

9
Lokesh Karki

ajouter ceci au fichier PUBSPEC.YAML sous Dépendances-

  device_apps:
  Android_intent:
  url_launcher:

et ajoutez-les au sommet -

import 'package:device_apps/device_apps.Dart';
import 'package:url_launcher/url_launcher.Dart';
import 'package:Android_intent/Android_intent.Dart';

et voici le code de l'échantillon -

_openJioSavaan (data) async
{String dt = data['JioSavaan'] as String;
  bool isInstalled = await DeviceApps.isAppInstalled('com.jio.media.jiobeats');
if (isInstalled != false)
 {
    AndroidIntent intent = AndroidIntent(
      action: 'action_view',
      data: dt
  );
  await intent.launch();
 }
else
  {
  String url = dt;
  if (await canLaunch(url)) 
    await launch(url);
   else 
    throw 'Could not launch $url';
}
}
2
Lokesh Karki

Vous pouvez utiliser flutter_appavailabilité paquet. Ce plugin vous permet de vérifier si une application est installée dans mobile et à l'aide de ce plugin, vous pouvez lancer une application.

Si déjà installé, lancez le lien Ouvrir autrement sur WebView en utilisant RL_Launcher .

2
Aryan