From b988dc6d1ef488cbe3af6c9de854a27b8cca91be Mon Sep 17 00:00:00 2001 From: monsieurtanuki Date: Fri, 25 Oct 2024 20:15:28 +0200 Subject: [PATCH] feat: 5648 - deep link for Prices (+ OxF fixes) (#5734) * feat: 5648 - deep link for Prices (+ OxF fixes) Impacted files: * `AndroidManifest.xml`: added an entry for Prices regarding deeplinks * `launch_url_helper.dart`: added beauty, products and petfood regarding deeplinks * `Runner.entitlements`: added an entry for Prices, beauty, products and petfood regarding deeplinks * added prices.net --- .../android/app/src/main/AndroidManifest.xml | 6 +- .../smooth_app/ios/Runner/Runner.entitlements | 300 ++++++++++++++++++ .../lib/helpers/launch_url_helper.dart | 4 +- 3 files changed, 308 insertions(+), 2 deletions(-) diff --git a/packages/smooth_app/android/app/src/main/AndroidManifest.xml b/packages/smooth_app/android/app/src/main/AndroidManifest.xml index 8cd6614a446..212f5f042f2 100644 --- a/packages/smooth_app/android/app/src/main/AndroidManifest.xml +++ b/packages/smooth_app/android/app/src/main/AndroidManifest.xml @@ -52,7 +52,11 @@ - + + + + + diff --git a/packages/smooth_app/ios/Runner/Runner.entitlements b/packages/smooth_app/ios/Runner/Runner.entitlements index a6d5cc08c4a..550e1759ddd 100644 --- a/packages/smooth_app/ios/Runner/Runner.entitlements +++ b/packages/smooth_app/ios/Runner/Runner.entitlements @@ -4,6 +4,9 @@ com.apple.developer.associated-domains + applinks:prices.openfoodfacts.org + applinks:prices.openfoodfacts.net + applinks:ae.openfoodfacts.org applinks:ar.openfoodfacts.org applinks:at-en.openfoodfacts.org @@ -201,6 +204,303 @@ applinks:www.openfoodfacts.net applinks:za.openfoodfacts.net applinks:zh.openfoodfacts.net + + applinks:ae.openbeautyfacts.org + applinks:ar.openbeautyfacts.org + applinks:at-en.openbeautyfacts.org + applinks:at.openbeautyfacts.org + applinks:au.openbeautyfacts.org + applinks:be-de.openbeautyfacts.org + applinks:be-en.openbeautyfacts.org + applinks:be-fr.openbeautyfacts.org + applinks:be.openbeautyfacts.org + applinks:bg.openbeautyfacts.org + applinks:br.openbeautyfacts.org + applinks:ca-fr.openbeautyfacts.org + applinks:ca.openbeautyfacts.org + applinks:ch-en.openbeautyfacts.org + applinks:ch-fr.openbeautyfacts.org + applinks:ch-it.openbeautyfacts.org + applinks:ch.openbeautyfacts.org + applinks:cl.openbeautyfacts.org + applinks:cn-en.openbeautyfacts.org + applinks:cn.openbeautyfacts.org + applinks:co.openbeautyfacts.org + applinks:cz.openbeautyfacts.org + applinks:de-en.openbeautyfacts.org + applinks:de.openbeautyfacts.org + applinks:dk.openbeautyfacts.org + applinks:dz-fr.openbeautyfacts.org + applinks:dz.openbeautyfacts.org + applinks:en.openbeautyfacts.org + applinks:es-ca.openbeautyfacts.org + applinks:es-en.openbeautyfacts.org + applinks:es-eu.openbeautyfacts.org + applinks:es-gl.openbeautyfacts.org + applinks:es.openbeautyfacts.org + applinks:fi.openbeautyfacts.org + applinks:fr-en.openbeautyfacts.org + applinks:fr-es.openbeautyfacts.org + applinks:fr.openbeautyfacts.org + applinks:gf.openbeautyfacts.org + applinks:gp.openbeautyfacts.org + applinks:gr.openbeautyfacts.org + applinks:hk.openbeautyfacts.org + applinks:hk-zh.openbeautyfacts.org + applinks:hu.openbeautyfacts.org + applinks:id.openbeautyfacts.org + applinks:ie.openbeautyfacts.org + applinks:il.openbeautyfacts.org + applinks:in.openbeautyfacts.org + applinks:ir.openbeautyfacts.org + applinks:it.openbeautyfacts.org + applinks:jp.openbeautyfacts.org + applinks:ke.openbeautyfacts.org + applinks:kh.openbeautyfacts.org + applinks:lu.openbeautyfacts.org + applinks:ma-fr.openbeautyfacts.org + applinks:ma.openbeautyfacts.org + applinks:mq.openbeautyfacts.org + applinks:mx.openbeautyfacts.org + applinks:nl-en.openbeautyfacts.org + applinks:nl.openbeautyfacts.org + applinks:no.openbeautyfacts.org + applinks:nz.openbeautyfacts.org + applinks:pe.openbeautyfacts.org + applinks:pf.openbeautyfacts.org + applinks:ph.openbeautyfacts.org + applinks:pl-en.openbeautyfacts.org + applinks:pl.openbeautyfacts.org + applinks:openbeautyfacts.org + applinks:pt-en.openbeautyfacts.org + applinks:pt.openbeautyfacts.org + applinks:re.openbeautyfacts.org + applinks:ro.openbeautyfacts.org + applinks:ru-en.openbeautyfacts.org + applinks:ru.openbeautyfacts.org + applinks:sa.openbeautyfacts.org + applinks:se.openbeautyfacts.org + applinks:sg.openbeautyfacts.org + applinks:sg-zh.openbeautyfacts.org + applinks:sk.openbeautyfacts.org + applinks:th.openbeautyfacts.org + applinks:tn-en.openbeautyfacts.org + applinks:tn.openbeautyfacts.org + applinks:tr.openbeautyfacts.org + applinks:tw.openbeautyfacts.org + applinks:uk.openbeautyfacts.org + applinks:us-es.openbeautyfacts.org + applinks:us.openbeautyfacts.org + applinks:world-de.openbeautyfacts.org + applinks:world-en.openbeautyfacts.org + applinks:world-es.openbeautyfacts.org + applinks:world-fr.openbeautyfacts.org + applinks:world-it.openbeautyfacts.org + applinks:world.openbeautyfacts.org + applinks:world-pt.openbeautyfacts.org + applinks:world-ru.openbeautyfacts.org + applinks:world-zh.openbeautyfacts.org + applinks:www.openbeautyfacts.org + applinks:za.openbeautyfacts.org + applinks:zh.openbeautyfacts.org + + applinks:ae.openproductsfacts.org + applinks:ar.openproductsfacts.org + applinks:at-en.openproductsfacts.org + applinks:at.openproductsfacts.org + applinks:au.openproductsfacts.org + applinks:be-de.openproductsfacts.org + applinks:be-en.openproductsfacts.org + applinks:be-fr.openproductsfacts.org + applinks:be.openproductsfacts.org + applinks:bg.openproductsfacts.org + applinks:br.openproductsfacts.org + applinks:ca-fr.openproductsfacts.org + applinks:ca.openproductsfacts.org + applinks:ch-en.openproductsfacts.org + applinks:ch-fr.openproductsfacts.org + applinks:ch-it.openproductsfacts.org + applinks:ch.openproductsfacts.org + applinks:cl.openproductsfacts.org + applinks:cn-en.openproductsfacts.org + applinks:cn.openproductsfacts.org + applinks:co.openproductsfacts.org + applinks:cz.openproductsfacts.org + applinks:de-en.openproductsfacts.org + applinks:de.openproductsfacts.org + applinks:dk.openproductsfacts.org + applinks:dz-fr.openproductsfacts.org + applinks:dz.openproductsfacts.org + applinks:en.openproductsfacts.org + applinks:es-ca.openproductsfacts.org + applinks:es-en.openproductsfacts.org + applinks:es-eu.openproductsfacts.org + applinks:es-gl.openproductsfacts.org + applinks:es.openproductsfacts.org + applinks:fi.openproductsfacts.org + applinks:fr-en.openproductsfacts.org + applinks:fr-es.openproductsfacts.org + applinks:fr.openproductsfacts.org + applinks:gf.openproductsfacts.org + applinks:gp.openproductsfacts.org + applinks:gr.openproductsfacts.org + applinks:hk.openproductsfacts.org + applinks:hk-zh.openproductsfacts.org + applinks:hu.openproductsfacts.org + applinks:id.openproductsfacts.org + applinks:ie.openproductsfacts.org + applinks:il.openproductsfacts.org + applinks:in.openproductsfacts.org + applinks:ir.openproductsfacts.org + applinks:it.openproductsfacts.org + applinks:jp.openproductsfacts.org + applinks:ke.openproductsfacts.org + applinks:kh.openproductsfacts.org + applinks:lu.openproductsfacts.org + applinks:ma-fr.openproductsfacts.org + applinks:ma.openproductsfacts.org + applinks:mq.openproductsfacts.org + applinks:mx.openproductsfacts.org + applinks:nl-en.openproductsfacts.org + applinks:nl.openproductsfacts.org + applinks:no.openproductsfacts.org + applinks:nz.openproductsfacts.org + applinks:pe.openproductsfacts.org + applinks:pf.openproductsfacts.org + applinks:ph.openproductsfacts.org + applinks:pl-en.openproductsfacts.org + applinks:pl.openproductsfacts.org + applinks:openproductsfacts.org + applinks:pt-en.openproductsfacts.org + applinks:pt.openproductsfacts.org + applinks:re.openproductsfacts.org + applinks:ro.openproductsfacts.org + applinks:ru-en.openproductsfacts.org + applinks:ru.openproductsfacts.org + applinks:sa.openproductsfacts.org + applinks:se.openproductsfacts.org + applinks:sg.openproductsfacts.org + applinks:sg-zh.openproductsfacts.org + applinks:sk.openproductsfacts.org + applinks:th.openproductsfacts.org + applinks:tn-en.openproductsfacts.org + applinks:tn.openproductsfacts.org + applinks:tr.openproductsfacts.org + applinks:tw.openproductsfacts.org + applinks:uk.openproductsfacts.org + applinks:us-es.openproductsfacts.org + applinks:us.openproductsfacts.org + applinks:world-de.openproductsfacts.org + applinks:world-en.openproductsfacts.org + applinks:world-es.openproductsfacts.org + applinks:world-fr.openproductsfacts.org + applinks:world-it.openproductsfacts.org + applinks:world.openproductsfacts.org + applinks:world-pt.openproductsfacts.org + applinks:world-ru.openproductsfacts.org + applinks:world-zh.openproductsfacts.org + applinks:www.openproductsfacts.org + applinks:za.openproductsfacts.org + applinks:zh.openproductsfacts.org + + applinks:ae.openpetfoodfacts.org + applinks:ar.openpetfoodfacts.org + applinks:at-en.openpetfoodfacts.org + applinks:at.openpetfoodfacts.org + applinks:au.openpetfoodfacts.org + applinks:be-de.openpetfoodfacts.org + applinks:be-en.openpetfoodfacts.org + applinks:be-fr.openpetfoodfacts.org + applinks:be.openpetfoodfacts.org + applinks:bg.openpetfoodfacts.org + applinks:br.openpetfoodfacts.org + applinks:ca-fr.openpetfoodfacts.org + applinks:ca.openpetfoodfacts.org + applinks:ch-en.openpetfoodfacts.org + applinks:ch-fr.openpetfoodfacts.org + applinks:ch-it.openpetfoodfacts.org + applinks:ch.openpetfoodfacts.org + applinks:cl.openpetfoodfacts.org + applinks:cn-en.openpetfoodfacts.org + applinks:cn.openpetfoodfacts.org + applinks:co.openpetfoodfacts.org + applinks:cz.openpetfoodfacts.org + applinks:de-en.openpetfoodfacts.org + applinks:de.openpetfoodfacts.org + applinks:dk.openpetfoodfacts.org + applinks:dz-fr.openpetfoodfacts.org + applinks:dz.openpetfoodfacts.org + applinks:en.openpetfoodfacts.org + applinks:es-ca.openpetfoodfacts.org + applinks:es-en.openpetfoodfacts.org + applinks:es-eu.openpetfoodfacts.org + applinks:es-gl.openpetfoodfacts.org + applinks:es.openpetfoodfacts.org + applinks:fi.openpetfoodfacts.org + applinks:fr-en.openpetfoodfacts.org + applinks:fr-es.openpetfoodfacts.org + applinks:fr.openpetfoodfacts.org + applinks:gf.openpetfoodfacts.org + applinks:gp.openpetfoodfacts.org + applinks:gr.openpetfoodfacts.org + applinks:hk.openpetfoodfacts.org + applinks:hk-zh.openpetfoodfacts.org + applinks:hu.openpetfoodfacts.org + applinks:id.openpetfoodfacts.org + applinks:ie.openpetfoodfacts.org + applinks:il.openpetfoodfacts.org + applinks:in.openpetfoodfacts.org + applinks:ir.openpetfoodfacts.org + applinks:it.openpetfoodfacts.org + applinks:jp.openpetfoodfacts.org + applinks:ke.openpetfoodfacts.org + applinks:kh.openpetfoodfacts.org + applinks:lu.openpetfoodfacts.org + applinks:ma-fr.openpetfoodfacts.org + applinks:ma.openpetfoodfacts.org + applinks:mq.openpetfoodfacts.org + applinks:mx.openpetfoodfacts.org + applinks:nl-en.openpetfoodfacts.org + applinks:nl.openpetfoodfacts.org + applinks:no.openpetfoodfacts.org + applinks:nz.openpetfoodfacts.org + applinks:pe.openpetfoodfacts.org + applinks:pf.openpetfoodfacts.org + applinks:ph.openpetfoodfacts.org + applinks:pl-en.openpetfoodfacts.org + applinks:pl.openpetfoodfacts.org + applinks:openpetfoodfacts.org + applinks:pt-en.openpetfoodfacts.org + applinks:pt.openpetfoodfacts.org + applinks:re.openpetfoodfacts.org + applinks:ro.openpetfoodfacts.org + applinks:ru-en.openpetfoodfacts.org + applinks:ru.openpetfoodfacts.org + applinks:sa.openpetfoodfacts.org + applinks:se.openpetfoodfacts.org + applinks:sg.openpetfoodfacts.org + applinks:sg-zh.openpetfoodfacts.org + applinks:sk.openpetfoodfacts.org + applinks:th.openpetfoodfacts.org + applinks:tn-en.openpetfoodfacts.org + applinks:tn.openpetfoodfacts.org + applinks:tr.openpetfoodfacts.org + applinks:tw.openpetfoodfacts.org + applinks:uk.openpetfoodfacts.org + applinks:us-es.openpetfoodfacts.org + applinks:us.openpetfoodfacts.org + applinks:world-de.openpetfoodfacts.org + applinks:world-en.openpetfoodfacts.org + applinks:world-es.openpetfoodfacts.org + applinks:world-fr.openpetfoodfacts.org + applinks:world-it.openpetfoodfacts.org + applinks:world.openpetfoodfacts.org + applinks:world-pt.openpetfoodfacts.org + applinks:world-ru.openpetfoodfacts.org + applinks:world-zh.openpetfoodfacts.org + applinks:www.openpetfoodfacts.org + applinks:za.openpetfoodfacts.org + applinks:zh.openpetfoodfacts.org diff --git a/packages/smooth_app/lib/helpers/launch_url_helper.dart b/packages/smooth_app/lib/helpers/launch_url_helper.dart index 3e1264d2f16..42edfe2d2e3 100644 --- a/packages/smooth_app/lib/helpers/launch_url_helper.dart +++ b/packages/smooth_app/lib/helpers/launch_url_helper.dart @@ -14,7 +14,9 @@ class LaunchUrlHelper { ) async { assert(url.isNotEmpty); - if (url.startsWith(RegExp('http(s)?://[a-z]*.openfoodfacts.(net|org)'))) { + if (url.startsWith(RegExp( + 'http(s)?://[a-z]*.open(food|beauty|products|petfood)facts.(net|org)', + ))) { AnalyticsHelper.trackOutlink(url: url); GoRouter.of(context).go(url); } else {