Cordova Android не разрешает открывать занесенные в белый список намерения для fb-messenger - PullRequest
8 голосов
/ 25 мая 2019

У меня есть приложение Ionic Cordova для Android, в котором есть кнопка для мессенджера Facebook:

<a href="https://m.me/my-fb-page" target="_blank"><img src="assets/images/messenger.svg" /></a>

При нажатии ничего не появляется на экране.Я получаю эту ошибку через logcat:

CordovaWebViewImpl: Blocked (possibly sub-frame) navigation to non-allowed URL: intent://user/xxxxxxxxxxxxx/?intent_trigger=mme&nav=discover#Intent;scheme=fb-messenger;package=com.facebook.orca;end

У меня установлен cordova-plugin-whitelist.

Содержимое config.xml:

    ...
    <content src="index.html" />
    <access origin="*" />
    <allow-intent href="http://*/*" />
    <allow-intent href="https://*/*" />
    <allow-navigation href="*" />
    <allow-intent href="tel:*" />
    <allow-intent href="sms:*" />
    <allow-intent href="mailto:*" />
    <allow-intent href="geo:*" />
    <allow-intent href="fb-messenger:*" />
    <platform name="android">
        <allow-intent href="market:*" />
        <allow-intent href="fb-messenger:*" />
        ...

Я пыталсяряд опций для разрешения-намерения, доступа и разрешения навигации.

Эта проблема не связана конкретно с мессенджером Facebook, у меня также проблемы с открытием других внешних (платежных) приложений

1 Ответ

3 голосов
/ 28 мая 2019

С <allow-navigation href="*" /> вы говорите своему приложению переходить на каждый URL, что препятствует работе любого allow-intent, поскольку оно будет пытаться перейти к нему вместо запуска намерения.

...