Je développe un lecteur multimédia avec Vala et je veux être en mesure d'ouvrir des fichiers audio avec cette application (une fois qu'il est installé).GTK autorise les fichiers ouverts avec une nouvelle application vala
Dans les fichiers .descktop J'ai ajouté les types MIME suivants pour indiquer quels fichiers peuvent ouvrir (ce sont les mêmes types MIME que dans banshee):
MimeType=application/musepack;application/ogg;application/rss+xml;application/vnd.emusic-emusic_list;application/x-ape;application/x-democracy;application/x-extension-m4a;application/x-extension-mp4;application/x-flac;application/x-flash-video;application/x-id3;application/x-linguist;application/x-matroska;application/x-miro;application/x-musepack;application/x-netshow-channel;application/x-ogg;application/x-quicktime-media-link;application/x-quicktimeplayer;application/x-shorten;application/x-troff-msvideo;application/xspf+xml;audio/3gpp;audio/AMR;audio/AMR-WB;audio/ac3;audio/ape;audio/avi;audio/basic;audio/flac;audio/midi;audio/mp;audio/mp2;audio/mp3;audio/mp4;audio/mp4a-latm;audio/mpc;audio/mpeg;audio/mpeg3;audio/mpegurl;audio/musepack;audio/ogg;audio/vorbis;audio/wav;audio/wave;audio/x-amzxml;audio/x-ape;audio/x-flac;audio/x-it;audio/x-m4a;audio/x-matroska;audio/x-mod;audio/x-mp;audio/x-mp3;audio/x-mpc;audio/x-mpeg;audio/x-mpeg-3;audio/x-mpegurl;audio/x-ms-asf;audio/x-ms-asx;audio/x-ms-wax;audio/x-ms-wma;audio/x-musepack;audio/x-ogg;audio/x-pn-aiff;audio/x-pn-au;audio/x-pn-wav;audio/x-pn-windows-acm;audio/x-s3m;audio/x-sbc;audio/x-scpls;audio/x-speex;audio/x-tta;audio/x-vorbis;audio/x-vorbis+ogg;audio/x-wav;audio/x-wavpack;audio/x-xm;image/avi;image/x-pict;misc/ultravox;text/google-video-pointer;text/x-google-video-pointer;text/x-opml+xml;video/3gpp;video/avi;video/dv;video/fli;video/flv;video/mp4;video/mp4v-es;video/mpeg;video/msvideo;video/ogg;video/quicktime;video/vivo;video/vnd.divx;video/vnd.vivo;video/x-anim;video/x-avi;video/x-flc;video/x-fli;video/x-flic;video/x-flv;video/x-m4v;video/x-matroska;video/x-mpeg;video/x-mpg;video/x-ms-asf;video/x-ms-wm;video/x-ms-wmv;video/x-ms-wmx;video/x-ms-wvx;video/x-msvideo;video/x-nsv;video/x-ogm+ogg;video/x-theora;video/x-theora+ogg;x-scheme-handler/lastfm;x-scheme-handler/u1ms;
Par Donig cette application est représenté dans la boîte de dialogue " Ouvrir avec "quand je clique sur un fichier.
Puis, dans ma classe, je Gtk.Application ajouté dans le constructeur:
class SomeClass (string[] args) {
Object (application_id: "some.id", flags: ApplicationFlags.HANDLES_OPEN);
// do stuff...
}
Et enfin j'ai ajouté la méthode « ouverte » qui est suposed être appelé lorsqu'un fichier est ouvert avec l'aplication:
public override void open (File[] files, string hint) {
// do stuff ...
}
Cependant, lorsque je tente d'ouvrir un fichier .mp3 avec ma demande apparaît une boîte de dialogue qui dit:
"No es poden obrir els fitxers o uri amb aquesta aplicació"
en anglais:
« Les fichiers ou URIs ne peut pas être ouvert avec cette application »
Ma question est la suivante: Suis-je manque quelque chose?
J'ai ajouté des types MIME dans le fichier descktop, j'ai activé le drapeau "HANDLES_OPEN" et j'ai implémenté la méthode "open".
PD: Je travaille avec elementaryOS et j'installe mon application avec CMake build system.