无法启动谷歌会议通过链接通过Flutter应用

wztqucjr  于 2023-03-24  发布在  Flutter
关注(0)|答案(2)|浏览(189)

我正试图建立一个应用程序,用户可以加入谷歌会议只需点击一下(我知道通过WhatsApp发送会议链接更容易,但我希望所有内容都在一个地方).我使用了url_launcher包,因为Google meet为每个会议生成一个URL.除了Google meet链接,其他每个URL都可以正常工作.每当我将Google meet URL作为参数传递给parse函数时,它将我重定向到模拟器中的“网页不可用”(即使在真实的设备上)。
如何使用户重定向到该特定会议并加入会议应用程序?

final Uri url = Uri.parse("https://meet.google.com/rxf-uxca-jpx");
  void _launchUrl() async {
    if (!await launchUrl(url)) throw 'Could not launch $url';
  }
ElevatedButton(
                    child: const Text(
                      'Click here to join',
                      style: TextStyle(
                        fontSize: 25,
                        fontWeight: FontWeight.bold,
                      ),
                    ),
                    onPressed: _launchUrl,
                  ),

我甚至在我的AndroidManifest.xml文件中进行了这些更改,如docs所示,我不知道这是否需要。

<queries>
  <!-- If your app opens https URLs -->
  <intent>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.BROWSABLE" />
    <data android:scheme="https" />
  </intent>
</queries>
qncylg1j

qncylg1j1#

试试这段代码,它会打开你手机上的google meet应用,并在url中提供链接。

googleMeet() async {
    const url = 'meet url';
    final uri = Uri.parse(url);
      await launchUrl(uri, mode: LaunchMode.externalApplication);
  }
4urapxun

4urapxun2#

试试下面的代码,它在我的机器上工作,参考我的答案here相同.
您的googleMeet函数的URL:

googleMeet() async {
  const url = 'https://meet.google.com/rxf-uxca-jpx';
  if (await canLaunch(url)) {
    await launch(url);
  } else {
    throw 'Could not launch $url';
  }
}

您的小工具:

ElevatedButton(
        child: Text(
          'Click here to join',
          style: TextStyle(
            fontSize: 25,
            fontWeight: FontWeight.bold,
          ),
        ),
        onPressed: () => googleMeet(),
      ),

相关问题