DeepLink 运行但不运行事件

问题描述 投票:0回答:1

使用物理 Android 设备时,我在 Cordova 中遇到深层链接问题。应用程序打开,但事件未运行。

首先,我从 Github“e-imaxina/cordova-plugin-deeplinks”安装了 1.1.1 版本的“cordova-plugin-deeplinks”插件

在我的 config.xml 文件中,我有以下配置:

<universal-links>
  <host name="my.website.com" scheme="https">
    <path url="/deep-link" event="loginExterno" />
  </host>
</universal-links>

我还设置了以下内容:

<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="*" />
<access origin="*" />
<allow-navigation href="*" />

在 OnDeviceReady 事件中的 index.js 文件中,我有以下代码:

universalLinks.subscribe('loginExterno', function (eventData) {
  alert("deepLink - 1");
});

universalLinks.subscribe(null, function (eventData) {
  alert("deepLink - 2");
});

我可以看到在AndroidManifest.xml文件中,Intent设置正确:

<intent-filter android:autoVerify="true">
  <action android:name="android.intent.action.VIEW"/>
  <category android:name="android.intent.category.DEFAULT"/>
  <category android:name="android.intent.category.BROWSABLE"/>
  <data android:host="my.website.com" android:scheme="https" android:path="/deep-link"/>
</intent-filter>

另一方面,我在 res/config.xml 文件中没有看到插件。正如我在其他插件中观察到的那样,它应该自动添加为一项功能。

在 Logcat 的 PluginManager 部分下,我看到此警告:“exec() 调用未知插件:UniversalLinks。”

从命令提示符运行以下命令会打开应用程序,但不会触发事件:

adb shell am start -W -a android.intent.action.VIEW -d https://my.website.com/deep-link io.cordova.hellocordova

总而言之,深层链接在从控制台触发时可以工作(我仍然无法从网络链接触发它),但关联的事件不会运行。

Cordova 12.0.0([电子邮件受保护]

插件

cordova-plugin-deeplinks 1.1.1“Cordova Deeplinks 插件”
cordova-plugin-device 2.1.0“设备”
cordova-plugin-dialogs 3.0.0-dev“通知”
cordova-plugin-inappbrowser 5.0.0“InAppBrowser”
cordova-plugin-nativestorage 2.3.2“NativeStorage”
cordova-plugin-screen-orientation 3.0.2“屏幕方向”
cordova-plugin-splashscreen 6.0.1“启动画面”
cordova-plugin-statusbar 3.0.0“状态栏”
cordova-plugin-vibration 3.1.1“振动”
cordova-plugin-x-socialsharing 6.0.4“社交共享”
es6-promise-plugin 4.2.2“承诺”

三星 Galaxy A22 - Android 13 - minSdkVersion 21

不使用 Ionic,只是简单的 html、js、css

android cordova deep-linking
1个回答
0
投票

终于成功了。我所做的就是卸载 e-imaxina/cordova-plugin-deeplinks 并安装 immament/cordova-universal-links-plugin。当我这样做时,它抛出了错误,所以我卸载了它并重新安装了以前的

我已经尝试过其他插件,但它对我不起作用。我也尝试过卸载并重新安装,但没有好的结果

© www.soinside.com 2019 - 2024. All rights reserved.