I have an other problem with Xcode 4. I really like the new IDEbut there are a few things I didn't get to work yet. One thing isto register Document Types with Xcode 4. I tried it with the oldway through the plist file, but it didn't work. (Means I couldn'topen a file with my app) But I don't now how to set it up with theinterface of Xcode 4.
My latest try looks like this: (Copied the entry made from Xcodein the info.plist)
我有一个关于Xcode4的其他问题。我真的很喜欢这个新的IDE,但也有几件让我无法工作的事情。其中一件事情是通过Xcode4注册文件类型。我试图通过老办法定义plist文件,但是它不能工作。 (意味着我的应用程序不能打开一个文件),但是,我现在并不知道如何设置Xcode4的接口。
我的最新尝试看起来像这样:(复制在Info.plist Xcode中的条目)
<array>
<dict>
<key>UTTypeConformsTo</key>
<array>
<string>public.plain-text</string>
</array>
<key>UTTypeDescription</key>
<string>ConfigurationFile</string>
<key>UTTypeIdentifier</key>
<string>com.myname.projec.iws</string>
</dict>
</array>
and:
<key>CFBundleDocumentTypes</key><array>
<dict>
<key>CFBundleTypeIconFiles</key>
<array>
<string>AnIcon-320</string>
</array>
<key>CFBundleTypeName</key>
<string>ConfigFile</string>
<key>LSItemContentTypes</key>
<array>
<string>com.myname.projec.iws</string>
</array>
</dict>
</array>
This does not work. The file in Mail doesn't have the option toopen with my app.
Does anyone have a working example with Xcode 4 or a tutorialhow to do it. I don't have any further Idea how to get it work.
这是行不通的。邮件中附件没有打开我的应用程序的选项。
有谁有一个用于Xcode4工作良好的例子或怎么配置的教程。我是没有什么办法让它能正常工作了。
Sandro
3 Answers
I think the role and the file extension are missing.
If you want to specify a file exte————nsion, you need to addUTTypeTagSpecification:
我觉得缺少的了Role和文件扩展名。
如果你想指定一个文件扩展名,你需要添加UTTypeTagSpecificationKEY:
<key>UTExportedTypeDeclarations</key>
<array>
<dict>
<key>UTTypeConformsTo</key>
<array>
<string>public.text</string>
</array>
<key>UTTypeDescription</key>
<string>my documenttype</string>
<key>UTTypeIdentifier</key>
<string>com.mycompany.myfiletypename</string>
<key>UTTypeTagSpecification</key>
<dict>
<key>public.filename-extension</key>
<array>
<string>iws</string>
</array>
</dict>
</dict>
For the role, you need to add CFBundleTypeRole:
关于Role,你需要添加CFBundleTypeRole KEY
<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>Myfile</string>
<key>CFBundleTypeIconFiles</key>
<array>
<string>document-320.png</string>
<string>document-64.png</string>
</array>
<key>LSHandlerRank</key>
<string>Alternate</string>
<key>CFBundleTypeRole</key>
<string>Viewer</string>
<key>LSItemContentTypes</key>
<array>
<string>com.mycompany.myfiletypename</string>
</array>
</dict>
</array>