2017-01-26 16 views
14

Kullanıcılarımız, e-postaları zaman zaman ör. şifresini değiştir. Bağlantıyı tıkladıklarında, web sitemize gönderilmesini istiyorum, ancak Android uygulamamız açıldı.Android uygulaması E-posta gönderilen bağlantılardan açılacak

Bağlantı örn. https://www.ourdomain.com/change-password/{random-string}.

Biz app etkin derin bağlantıları var, ama bunlar aşağıdaki şekilde yapılandırılır:

  <intent-filter android:label="..."> 
      <action android:name="android.intent.action.VIEW" /> 

      <category android:name="android.intent.category.DEFAULT" /> 
      <category android:name="android.intent.category.BROWSABLE" /> 

      <data 
       android:host="customhost" 
       android:pathPrefix="/" 
       android:scheme="https" /> 

      <data 
       android:host="www.ourdomain.com" 
       android:pathPrefix="/somethingelse" 
       android:scheme="https" /> 

      <data 
       android:host="www.ourdomain.com" 
       android:pathPrefix="/againsomethingelse" 
       android:scheme="https" /> 

      <data 
       android:host="someothercustomhost" 
       android:scheme="https" /> 

      <data 
       android:host="andagainacustomhost" 
       android:scheme="https" /> 
     </intent-filter> 

Yani change-password parçası olduğunu konfigürasyonlarda herhangi uymuyor, sebebi bizim app ne olabilir Yine de açılır?

DÜZENLEME

sorunun ilk data -etiket olduğu gibi görünüyor; Bunu açıklarsam, beklendiği gibi davranır (yani, uygulama tarafından https://www.ourdomain.com/change-password/1234 işlenmez). customhost olarak www.ourdomain.com tam bir farklı kelime neden bilmiyorum ...

+0

Bağlantıları göndermeden önce değiştirmişsiniz gibi görünüyor. Bu biraz kafa karıştırıcı yapar. Ama bu doğru görünüyor. Bu bağlantı, uygulama tarafından açık olmamalıdır. Sorunu tekrar kontrol edebilir misin? ? Bağlantıları doğru şekilde gönderiyor musunuz? –

+0

evet; 'www.ourdomain.com' bir Alman url’dir,' customhost'-stuff 'url'den tamamen farklı bir şeydir,' change-password'-thing 1: 1'dir. – swalkner

+0

, uygulamanın o alanı dinlemesine neden olan başka nedenler/yapılandırmalar olabilir mi? – swalkner

cevap

2

tek bir <intent-filter> uygulama ile karışık çünkü doğru yazılır bile, farklı <intent-filter> bileşenlerine ayırmak için çalışabilir.

<intent-filter android:label="..."> 
    <action android:name="android.intent.action.VIEW" /> 

    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" />   

    <data android:host="www.ourdomain.com" 
     android:pathPrefix="/somethingelse" 
     android:scheme="https" /> 

    <data android:host="www.ourdomain.com" 
     android:pathPrefix="/againsomethingelse" 
     android:scheme="https" /> 
</intent-filter> 

<intent-filter android:label="..."> 
    <action android:name="android.intent.action.VIEW" /> 

    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 

    <data android:host="customhost" 
     android:pathPrefix="/" 
     android:scheme="https" /> 
</intent-filter> 

<intent-filter android:label="..."> 
    <action android:name="android.intent.action.VIEW" /> 

    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 

    <data android:host="someothercustomhost" 
     android:scheme="https" /> 
</intent-filter> 

<intent-filter android:label="..."> 
    <action android:name="android.intent.action.VIEW" /> 

    <category android:name="android.intent.category.DEFAULT" /> 
    <category android:name="android.intent.category.BROWSABLE" /> 

    <data android:host="andagainacustomhost" 
     android:scheme="https" /> 
</intent-filter>