AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Cross-Platform-Entwicklung Dateiendung mit Mobilen Apps verknüpfen
Thema durchsuchen
Ansicht
Themen-Optionen

Dateiendung mit Mobilen Apps verknüpfen

Ein Thema von weisswe · begonnen am 17. Sep 2013 · letzter Beitrag vom 2. Okt 2014
Antwort Antwort
weisswe
(Gast)

n/a Beiträge
 
#1

Dateiendung mit Mobilen Apps verknüpfen

  Alt 17. Sep 2013, 12:10
Hallo!

Hat jemand eine Idee wie ich meine mobilen Apps mit einer eigenen Dateiendung verknüpfen kann (z.b. *.xyz)?
In Windows ist das ja kein Problem - Registry.
Aber wenn ich in iOS via email ein Attachment öffne, bekomme ich bei "bekannten" Dateiendungen einen Vorschlag der verknüpften Apps.
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.640 Beiträge
 
#2

AW: Dateiendung mit Mobilen Apps verknüpfen

  Alt 17. Sep 2013, 18:25
Hi,

das ist grundsätzlich kein Problem.

In Deiner Info.plist-Datei kannst Du Dateitypen mit dem key "CFBundleDocumentTypes" registrieren.

Beispiel:
Code:
<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeIconFiles</key>
        <array>
            <string>MyDocument-320.png</string>
            <string>MyDocument-64.png</string>
        </array>
        <key>CFBundleTypeName</key>
        <string>Your custom file type</string>
        <key>CFBundleTypeRole</key>
        <string>Viewer</string>
        <key>LSHandlerRank</key>
        <string>Owner</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>com.deinedomain.customtype.xyz</string>
        </array>
    </dict>
</array>

Unbekannt Dateitypen (wie hier com.deinedomain.customtyoe.xyz musst Du auch in der Info.plist-Datei mit dem Key "UTExportedTypeDeclarations" exportieren:

Beispiel:
Code:
<key>UTExportedTypeDeclarations</key>
<array>
    <dict>
        <key>UTTypeConformsTo</key>
        <array>
            <string>public.plain-text</string>
            <string>public.text</string>
        </array>
        <key>UTTypeDescription</key>
        <string>Some custom file type description</string>
        <key>UTTypeIdentifier</key>
        <string>com.deinedomain.customtype.xyz</string>
        <key>UTTypeTagSpecification</key>
        <dict>
            <key>public.filename-extension</key>
            <string>xyz</string>
            <key>public.mime-type</key>
            <string>mycustommimetype/x-xyz</string>
        </dict>
    </dict>
</array>
Damit wird Deine App als Handler für die Dateien registriert.
Wird dann eine Datei aus einem Attachment mit deiner App geöffnet gibt es zwei Möglichkeiten wie Du das mitbekommen kannst:

1.) Deine Anwendung läuft aktuell NICHT im Hintergrund:
Deine Anwendung wird gestartet und der application:didFinishLaunchingWithOptions-Callback wird aufgerufen mit launchOptions valueForKey: UIApplicationLaunchOptionsURLKey.

2.) Deine Anwendung läuft schon:
Dann wird der application: openURL-Callback aufgerufen.

In den beiden Callbacks kannst Du dann darauf reagieren und die Datei entsprechend öffnen.

Edit: Versehentlich reingerutscher Smiley entfernt
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org

Geändert von Phoenix (17. Sep 2013 um 18:28 Uhr)
  Mit Zitat antworten Zitat
weisswe
(Gast)

n/a Beiträge
 
#3

AW: Dateiendung mit Mobilen Apps verknüpfen

  Alt 17. Sep 2013, 22:10


Super, danke für die schnelle und kompetente Auskunft!
Werd es so schnell wie möglich implementieren und testen...
  Mit Zitat antworten Zitat
Bambini
(Gast)

n/a Beiträge
 
#4

AW: Dateiendung mit Mobilen Apps verknüpfen

  Alt 1. Okt 2014, 15:32
Hi,
das ist grundsätzlich kein Problem.

In Deiner Info.plist-Datei kannst Du Dateitypen mit dem key "CFBundleDocumentTypes" registrieren.
Gibt es eine Möglichkeit diese Einstellungen in Delphi zu pflegen?
Da die *.plist bei jedem Build neu erstellt wird, gehen manuelle Änderungen immer verloren.

In den Versionsinfos kann man wohl nur <key>...</key><string>...</string> Werte erfassen.

PS: Der Artikel von Chris kenne ich bereits.
http://delphihaven.wordpress.com/201...-on-osx-part2/
Ist jedoch recht umständlich, da man ab dann die ganz plist selbst pflegen muss.

Geändert von Bambini ( 1. Okt 2014 um 15:56 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.492 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Dateiendung mit Mobilen Apps verknüpfen

  Alt 2. Okt 2014, 12:52
Vielleicht hilft Dir das
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz