1

Je veux voir ma demande dans le dialogue Chooser lorsque je clique sur tout type de fichier ou cliquez sur pièces jointes gmail ou part un fichier dans mon appareil Android . Donc, pour réaliser cette fonctionnalité, j'ai utilisé ci-dessous les filtres d'intention.cacher ma demande dans le dialogue intention chooser lorsque cliquer sur la notification gmail dans Android

<activity 
      android:name=".activities.ShareWithAttachmentActivity" 
      android:label="Adoddle" 
      android:screenOrientation="sensorPortrait"> 
      <intent-filter> 
       <!----> 
       <action android:name="android.intent.action.VIEW" /> 
      <action android:name="android.intent.action.SEND" /> 

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

       <!--<data android:mimeType="*/*" />--> 
       <data android:mimeType="application/*" /> 
       <data android:mimeType="audio/*" /> 
       <data android:mimeType="image/*" /> 
       <data android:mimeType="message/*" /> 
       <data android:mimeType="multipart/*" /> 
       <data android:mimeType="text/plain" /> 
       <data android:mimeType="text/html" /> 
       <data android:mimeType="text/javascript" /> 
       <data android:mimeType="text/richtext" /> 
       <data android:mimeType="text/uri-list" /> 
       <data android:mimeType="text/xml" /> 
       <data android:mimeType="text/css " /> 
       <data android:mimeType="video/*" /> 
      </intent-filter> 
     </activity> 

Mais quand je clique sur notification gmail App ouvre et dialogue Chooser dans ce chooser je peux voir ma demande. Et quand je clique sur mon application, il tombe en panne. Selon mes exigences, mon application ne devrait pas être affichée dans cette boîte de dialogue de sélection d'applications lorsque je clique sur cette notification gmail.

J'ai référé ci-dessous des liens pour cela, mais ne m'a pas aidé.

  1. Android: Registering Intent Filter to open email attachment with my app
  2. Android - Opening gmail attachment with my App
  3. Intent filter to download attachment from gmail apps on Android
+0

Pourriez-vous s'il vous plaît préciser comment déclencher l'application de notification gmail dialogue Chooser? – friedger

+0

donne '' pour déclencher la boîte de dialogue de sélection de l'application de notification Gmail –

Répondre

0

supprimer ces deux actions de <intent-filter>

<action android:name="android.intent.action.SEND" /> 
<action android:name="android.intent.action.SEND_MULTIPLE" /> 
+0

Question éditée. Je veux également voir mon application lorsque je partage un fichier. Donc, je ne peux pas supprimer ces actions. –

+0

Même pour le partage, vous n'avez pas besoin d'ajouter ces actions savoir. Si vous partagez un fichier, vous allez ouvrir l'intention implicite correspondante qui gérera ce type de fichier. – Abilash

1

J'ai trouvé une solution pour cela. Lorsque vous cliquez sur la notification gmail, le type mime est "application/gmail-ls". Excluez donc ce type mime dans votre application. Supprimez donc <data android:mimeType="application/*" /> et spécifiez le type de filtre que vous souhaitez filtrer. (Par exemple application/zip, l'application /msword etc.)

<activity 
      android:name=".activities.ShareWithAttachmentActivity" 
      android:label="Adoddle" 
      android:screenOrientation="sensorPortrait"> 
      <intent-filter> 
       <!----> 
       <action android:name="android.intent.action.VIEW" /> 
      <action android:name="android.intent.action.SEND" /> 

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

<data 
        android:host="*" 
        android:mimeType="application/zip" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="application/vnd.ms-excel" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="application/msword" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="application/vnd.ms-powerpoint" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="application/pdf" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="audio/*" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="image/*" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="message/*" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="multipart/*" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="text/plain" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="text/html" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="text/javascript" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="text/richtext" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="text/uri-list" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="text/xml" 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="text/css " 
        android:scheme="content" /> 
       <data 
        android:host="*" 
        android:mimeType="video/*" 
        android:scheme="content" /> 

      </intent-filter> 
     </activity>