Ich habe Probleme damit, eine benutzerdefinierte Dateierweiterung in meiner Android-Anwendung über das Google-Laufwerk zu öffnen. Meine Datei öffnet sich derzeit gut über Dropbox oder den Android-Datei-Explorer. Google Drive scheint nur den MIME-Typ der Datei zu berücksichtigen. Die Dateierweiterung ist meine eigene (sagen wir .xyz) und die Datei ist xml auf der Innenseite. Ich möchte, dass die Datei in meiner App geöffnet wird und nicht nur eine App, die zum Öffnen von Text / XML-MIME-Typen registriert ist. Wie kann ich sagen, Google Drive die .xyz-Dateien sind nicht wie text / xml behandelt werden. Ebenso möchte ich nicht, dass meine App registriert wird, um alle Text / XML-Dateien zu öffnen.
Der Endbenutzer-Workflow wäre also so: 1) Öffnen Sie die Google Drive Android App. 2) Tippen Sie auf "somefile.xyz" - & gt; Die Datei würde in meiner App geöffnet werden. Zur Zeit wird es im Google Drive Xml Viewer geöffnet. 3) Tippen Sie auf "otherfile.xml" - & gt; Die Datei wird in meiner App nicht geöffnet.
Die Antwort auf diese Frage lautet: Sie können das nicht tun.
Mit einer Datei namens .xyz und einem Format von xml auf der Innenseite ist es am besten, verschiedene Intent-Filter zu erstellen, die alle Möglichkeiten behandeln, wie andere Apps die Datei identifizieren. Zum Beispiel habe ich die folgenden MimeTypes in meine Intent-Filter eingefügt.
Sie können Ihre Dateien in dem privaten Verzeichnis Ihrer Anwendung speichern, auf das von keiner anderen App zugegriffen wird
Siehe diesen Link, wie man das macht
Context.MODE_PRIVATE und getFilesDir () können für Sie hilfreich sein.
Oder wenn Sie möchten, dass andere Apps etwas für Sie tun und das Ergebnis an Ihre Anwendung zurückgeben Mach das durch.
oder
Tags und Links android google-drive-sdk mime-types