問題タブ [uti]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
objective-c - plistファイルでUniform Type Identifierを定義するには?
私のアプリケーションは次のNSApplicationDelegate関数を使用します。
この関数を使用して、ユーザーがドックのアプリケーション アイコンに画像ファイルをドラッグ アンド ドロップできるようにしたいと考えています。
plistファイル内で特定のファイル タイプを定義して、それらを画像に制限するにはどうすればよいですか? 構造はこのようなものでなければならないことがわかりました。
ファイルに追加しましたplistが、機能しません。ポップアップ ウィンドウに次のエラー メッセージが表示されます。
ドキュメント「test.jpg」を開けませんでした。MyApp は「JPEG 画像」形式のファイルを開くことができません。
さらに、定義したいものがあるというドキュメントを読みました。public.image
plist一方、「ドキュメントベースのアプリケーションを作成する」オプションを使用して Cocoa アプリケーションを作成すると、ファイルにはキーしか含まれていないことがわかりましたCFBundleDocumentTypes。オプションに存在する依存関係を明確にしていただけますか?
cocoa - public.composite-content(kUTTypeCompositeContent)とはどのようなファイルですか?
私はファイルインポータを書いていて、PDFタイプを処理したいと思っています。com.adobe.pdf(kUTTypePDF)が表示され、public.composite-content入力します。
ユニフォームタイプ識別子リファレンスドキュメント:
混合コンテンツの基本タイプ。たとえば、PDFファイルにはテキストと特別なフォーマットデータの両方が含まれています。
誰かがこのタイプのファイルの例を親切に教えてもらえますか?
iphone - 別のアプリからファイルを開くための Documents/Inbox フォルダー
アプリを登録して、いくつかのファイルタイプを関連付けました。ファイルがメールの添付ファイルに入ると、アプリを使用してファイルを開きます。私のアプリは、Documents フォルダー内に "Inbox" フォルダーを自動的に作成し、ファイルを "Inbox" に保存します。この受信トレイは特別です。プログラムでフォルダを作成したり、ファイルをそこに移動したりできないからです。
質問は次のとおりです。
「受信箱」の特徴は?いくつかの設定を変更すると、内部にサブフォルダーを作成できますか?
これに対する通常の解決策は何ですか?
ありがとう
カレン
objective-c - 許可されたファイル タイプを plist から取得するスマートな方法
シナリオ:
Info.plistCocoa アプリケーションのファイルで許可されるファイル タイプ (コンテンツ タイプ) を定義したいと考えています。したがって、次の例のように追加しました。
さらに、私のアプリケーションでは、 を使用してファイルを開くことができますNSOpenPanel。このパネルでは、次のセレクターを使用して、許可されるファイル タイプを設定できます: setAllowedFileTypes:. ドキュメントには、UTI を使用できると記載されています。
ファイルの種類は、一般的なファイル拡張子または UTI にすることができます。
カスタム ソリューション:
Info.plistファイルから UTI を抽出するために、次のヘルパー メソッドを作成しました。
の代わりに[NSBundle mainBundle]もCFBundleGetInfoDictionary(CFBundleGetMainBundle())使えます。
質問:
- ファイルからコンテンツ タイプ情報を抽出するよりスマートな方法を知ってい
Info.plistますか? Cocoa 組み込み機能はありますか? - そこに含めることができるフォルダーの定義をどのように処理します
public.folderか?
注:
調査を通じて、この記事は非常に有益であることがわかりました: Simplifying Data Handling with Uniform Type Identifiers。
iphone - 他のアプリは、iOS 5 のペーストボード データのテキスト バージョンではなく、HTML を貼り付けます
ユーザーがテキストをペーストボードにコピーできる既存のアプリがあります。可能であれば、HTML とプレーン テキストの両方をクリップボードに入れます。これは、ユーザーが他のどのアプリに貼り付けているかがわからず、書式設定された (HTML) データと書式設定されていないデータの両方を提供したいためです。
この機能は iOS 3 および 4 でうまく機能します。しかし、ユーザーが iOS 5 をインストールするとすぐに、アプリから他のアプリにテキストを貼り付けると、他のアプリは HTML テキストを取得しますが、プレーン テキストとして扱います。そのため、H1 見出しを選択してコピーし、他のアプリに貼り付けると、「これは見出しです」ではなく「<h1>これは見出しです</h1>」と表示されます。
これは、iOS 3 および 4 で正常に動作する既存のコードを使用していることに注意してください。iOS 3、4、および 5 の間でコードに変更はありません。
完全を期すために、ペーストボードにテキストを配置するために使用するコードを次に示します。参照用に単純な文字列を提供します。
明らかに、私の質問は、「iOS 4 で実行されている同じアプリがプレーン テキストを取得するのに、iOS 5 アプリがプレーン テキストを要求したときに HTML テキストを取得するのはなぜですか?」というものです。
macos - 動的UTIは安定していますか?
UTI が宣言されていない形式のファイルがあるため、Launch Services はそれに動的 UTI を割り当てました ( dyn.ah62d4rv4ge81g23wsmw1a5dbte)。これらのドキュメントの UTI を制御することはできません。
また、そのフォーマット用のクイック ルック ジェネレーターを開発したい場合もあり、クイック ルック ジェネレーターはドキュメント UTI のみに依存し、プロパティ リストにある他の種類のドキュメント ID (作成者コードや拡張子)。
開発者が動的 UTI を追加するまで、動的 UTI を使用しても安全ですか? それらは、別のマシンの同じファイルに対して同じ UTI を返す可能性が高い安定したアルゴリズムによって生成されていますか?
ios - iOS ドキュメント/ファイル タイプの関連付け - ワイルドカード UTI?
一般的なファイルマネージャーのようなアプリがあります。QLPreviewController、UIDocumentInteractionControllerなどを使用するアプリにある「...で開く」機能を使用して、アプリに任意のファイルタイプを送信できるようにしたいと考えています。
ドキュメント タイプを作成しましたが、「タイプ」が「 * 」、「 public. * 」、または同様の組み合わせに設定されているかどうかに関係なく、特定のケース以外でアプリを表示できません (たとえば、UTI を com.adobe.pdf に変換します)。
Mac OS X では、アプリをすべてのファイル タイプの汎用ビューアに設定できますが、これは iOS では不可能ですか?
編集
ドキュメントを調べたところ、他のすべてが継承するプリミティブな UTI タイプはほんの一握りしかないことがわかりました。
これらのうち、多くは明らかにファイルのインスタンスにはなりません。
ワイルドカード テストを作成しようとして野心的すぎた可能性があります。public.item を試したところ、メールからの pdf ファイルで動作しました。ドキュメントには public.item が「物理階層の基本型」であると記載されているため、これはワイルドカード、つまり「 public.item = * 」であることを意味する可能性があります。
最悪のシナリオでは、アイテム、コンテンツ、データベース、およびアーカイブを追加して、最善を尽くすことができます。最良のシナリオ、アイテムはすべてをカバーします。
macos - Finder に UTI が表示されない
メール クライアント アプリケーションが .eml ファイルを開くことができることを OSX の Finder に伝えようとしていますが、今のところうまくいきません。私は Mail.app の plist から葉を取って、UTTypeIdentifier を自分の会社に変更するだけで、ほとんどの UTI 値をそのままコピーしました。
そのままのplist:
ここで私が間違っていることは明らかですか?
objective-c - UIDocumentInteractionController、ファイル拡張子なし、UTI
アプリがサポートする UTI を知っている別のアプリにファイルを送信するにはどうすればよいですか? ファイルにファイル拡張子がないとしますが、たまたまファイルの UTI を知っています。
私は次のことを試しました:
サポートされているアプリが表示されますが、選択してもアプリが切り替わりません。デリゲートは、
しかし
呼び出されることはなく、アプリケーションが切り替わることもありません。
ターゲット アプリは、UTI を次のようにエクスポートします。
これがうまくいかなかったので、カスタム拡張機能も追加してみました。それでも、この方法では機能しません。カスタム拡張子をファイルに追加すると、に引き渡され、機能しますDocumentInteractionController。ただし、アプリケーションのリストには、UTI タイプ I の提供に関係なく、同じファイル拡張子をサポートする他のすべてのアプリケーションが表示されます。
2 つの異なるアプリケーションで 2 つの UTI を宣言するとします。
ファイルを DocumentInteractionController に渡し、UTI をcom.mycomp.aそれに設定すると、ファイルを処理できる可能性のあるアプリケーションとして App2 も表示されます。
次の方法で拡張機能付きの UTI を定義しました。
私は本当にあなたの助けに感謝します.私はちょっと行き詰まっています. 再度の質問: DocumentInteractionController でアプリケーションを選択肢として表示したくない他のファイルと同じ拡張子を持つ、または既知の UTI を持つファイルをアプリに送信するにはどうすればよいですか?
ありがとう
objective-c - カスタムUTIがアプリで開かない
私は自分のアプリ用に新しいドキュメントUTIを作成して、人々が興味のあるポイントを他の人と共有できるようにしようとしています。SO、チュートリアル、およびAppleのドキュメントで私が理解できることから、次のことを行う必要があります。
- .plistにドキュメントタイプを作成します
- それに対応するエクスポートされたUTIを作成します
- 次のメソッドを使用します:-(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
私が理解していることから、あなたがそれらの権利を実行している限り、あなたは問題なくメールを通してファイルを開くことができるはずです。残念ながら、それは私自身のカスタムUTIでは機能しません。メールの[プログラムから開く...]のリストにアプリが表示されますが、アプリを選択してもアプリがまったく開きません。アプリが開いていないときだけでなく、アプリが開いているときも、何もしません。メールはアップしたままで、何も起こりません。また、「オーガナイザー」を使用してコンソールを確認しましたが、何も起こりません。
もともと私のplistが間違っていると思ったので、公開UTIを開いてテストし(com.adobe.pdfドキュメントタイプを追加しました)、アプリは正常に起動しました(ただし、実際にはPDFをサポートしていないためすぐにクラッシュしました;))。しかし、ポイントは問題なく起動したということでした。
私が考えることができる唯一の問題は、ファイルをどのように作成しているかです。この方法を使用して電子メールでファイルを作成しています(エクスポートするアプリでも):
何か問題がありますか?
また、これが私のplistコードです:
CFBundleDocumentTypes:
UTExportedTypeDeclarations:
助けてくれてありがとう!-マーク