微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

颤振深层链接在真实设备上不起作用

如何解决颤振深层链接在真实设备上不起作用

我正在尝试向我的应用添加深层链接,我正在使用 uni_links

我按照页面上的说明操作,在 android 模拟器上一切正常 - 我通过深层链接打开应用程序,快照有数据并返回 urlResponse,但在真实设备上,当我打开时应用通过深层链接,快照没有任何数据,返回首页

这是我的代码

    class MyApp extends StatelessWidget {
          @override
          Widget build(BuildContext context) {
            return MaterialApp(
              debugShowCheckedModeBanner: false,theme: ThemeData(
                primaryColor: Colors.white,visualDensity: VisualDensity.adaptivePlatformDensity,),home: StreamBuilder(
                stream: getLinksstream(),builder: (context,snapshot) {
                  if (snapshot.hasData) {
                    // our app started by configured links
                    Uri uri = Uri.parse(snapshot.data);
                    List<MapEntry<String,List<String>>> list =
                        uri.queryParametersAll.entries.toList();
                    return urlResponse(uri,list);
                  } else {
                    // our app started regularly
                    return HomePage();
                  }
                },);
          }

和我的 AndroidManifest.xml:

    <!-- Deep Links -->
        <intent-filter>
          <action android:name="android.intent.action.VIEW" />
          <category android:name="android.intent.category.DEFAULT" />
          <category android:name="android.intent.category.broWSABLE" />
          <!-- Accepts URIs that begin with YOUR_SCHEME://YOUR_HOST -->
          <data
            android:scheme="http"
            android:host="example.com"
            android:pathPrefix="/myApp"/>
        </intent-filter>

谁能帮我理解为什么它可以在模拟器上运行而不是在真实设备上运行?

解决方法

在包页面中,作者说“通常您会检查 getInitialLink 并侦听更改。”可能的情况是,当您尝试使用 android 模拟器时,您的应用程序在后台运行,但是当您尝试使用真实设备时,该应用程序未打开。试试作者得到的示例代码,如果问题仍然存在,请在他的github页面报告问题。

这些链接的问题在于,即使您没有任何 dart 代码,只要拥有 intent-filter,应用程序就会打开。所以当应用程序启动时可能会有点混乱,但没有显示数据。我会尝试getInitialLink

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。