4

Document Interaction Programming と UIDocumentInteractionController の基本を理解し、自分のアプリで動作させることができました。ただし、カスタム ファイル タイプの使用に関する特定の詳細に問題があります。これはAppleのドキュメントのどこにも記載されていません。

私のアプリは、独自の拡張子を持つ独自のファイル タイプを使用しています。ファイル自体は単なる plist (xml) ですが、デバイスでファイルを自分のアプリでのみ開くことができるようにしたいと考えています。もともと、私は Document Interaction を実装して、動作中にそれらを XML として処理していましたが、今ではアプリに渡す必要があるバイナリ ファイルとして処理するようにしたいと考えています。

現時点では、電子メールの添付ファイルに私のファイルの 1 つがある場合、iOS は最初に QuickLook (xml のすべてのテキスト コンテンツを吐き出すだけ) を表示してから、[開く] を選択できます。同様に、ファイルの 1 つを Safari で開いた場合、Safari は XML を表示するだけで、アプリで表示するオプションはまったくありません。

では、iOS がファイルを XML として扱わないようにするにはどうすればよいでしょうか? info.plist の「 Conforms to UTI」値と「public.mime-type 」値を変更しましたが、効果がないようです。

どんなヒントでも大歓迎です。

4

1 に答える 1

0

AppleのUITの概念を理解している限り、ファイル拡張子を変更してファイルの潜在的なUITを変更することはできません。ファイルに XML データが含まれている場合、他のアプリや内部アプリがコンテンツを認識し、内部で XML として表示する可能性があります。

Plists を保存してみてくださいNSPropertyListSerialization NSPropertyListBinaryFormat_v1_0(その後、XML を読み込めます)。

成功しなかった場合は、これを試してみませんか:

  1. zlibその後、XML plist を zip ファイルに圧縮するために使用します。
  2. 「独自の」ファイル拡張子 ( <file>.myappname)を作成する

これにより、他のアプリとクイックビューが「非表示」になります。

方法の 1 つがうまくいったかどうか教えてください。

于 2012-04-18T20:20:24.777 に答える