2010-08-12 13 views

Répondre

8

Je pense que vous ne choisissez pas cela. Ceci est géré par le système. Même chose quand vous envoyez une intention à gérer par une carte, Si vous avez skyfire par exemple, le système ouvre une fenêtre et vous pouvez choisir l'application et choisir si vous voulez qu'elle ouvre toujours ce type de fichier.
À moins bien sûr que votre application soit la seule à ouvrir ce type de fichier.

Modifier
Je pense que si vous voulez que votre application pour dire « hey, je suis en mesure d'ouvrir ces fichiers .cool », vous devez configurer <intent-filters> avec une étiquette <data> et specificy le mimeType ou Uri. Check here pour plus de détails.

+1

Il demande comment spécifier que son application peut gérer un type de fichier. – alexanderblom

+0

vrai, j'ai ajouté quelques trucs. – Sephy

+0

Puis-je avoir un exemple de travail complet? –

12

Vous pouvez ajouter ce qui suit au fichier AndroidManifest.xml dans l'activité qui doit ouvrir le fichier (pdf dans notre cas)

 <intent-filter > 
      <action android:name="android.intent.action.VIEW" /> 
      <category android:name="android.intent.category.DEFAULT" /> 
      <data android:mimeType="application/pdf" /> 
     </intent-filter> 

Assurez-vous que vous spécifiez le format MIME approprié. L'utilisateur sera invité à choisir votre application si elle veut ouvrir le fichier "pdf".

Vérifiez également Android intent filter: associate app with file extension pour plus de détails.

+2

En fait, OP dit qu'il veut ouvrir les fichiers .cool, pas pdf. –

+0

Pour ouvrir un autre type de fichier, vous pouvez remplacer "application/pdf" par "*/*" (cela ouvrira toutes les extensions). Pour limiter à une extension spécifique, vous pouvez ajouter Xidh