Comments 1
Привет, да тоже столкнулся с проблемами по Deep Link'ам с разными build variant'ами. Думали сделать через разные файлы graph
'ов либо strings
для каждого build type'a, но это бы ещё больше проблем создало. Смогли все таки решить, можно сделать такую реализацию:
Обязательно к нашему host
'у НЕ должна быть добавлена scheme=app
в AndroidManifest
далее нам нужно <deepLink ... />
в nav_graph
указывать таким образом:
app:uri="https://.*/path"
Очень полезная ссылка на тред в stackoverflow, мне кажется при создании статьи тоже изучали его.
Код в результате:
AndroidManifest.xml
<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:scheme="http" />
<data android:scheme="https" />
<data android:host="${host}" />
</intent-filter>
nav_graph.xml
<fragment
android:id="@+id/example_fragment"
android:name="com.example.presentation.ui.fragments.ExampleFragment"
tools:layout="@layout/fragment_example">
<deepLink
android:autoVerify="true"
app:uri="https://.*/path/{id}" />
<argument
android:name="id"
android:defaultValue="-1"
app:argType="integer" />
</fragment>
А так да, проблем было очень много, спасибо большое за статью ❤️
Sign up to leave a comment.
Недостатки Navigation Component deep linking и как их обойти