gpt4 book ai didi

ios - 使用 CFBundleDocumentTypes : why does my app not show up in the "Share" menu?

转载 作者:可可西里 更新时间:2023-11-01 03:33:02 27 4
gpt4 key购买 nike

我正在尝试为所有可能的文件类型注册我的应用程序。我将以下内容添加到我的 info.plist 中:

<key>CFBundleDocumentTypes</key>
<array>
<dict>
<key>CFBundleTypeName</key>
<string>public.data</string>
<key>LSItemContentTypes</key>
<array>
<string>public.data</string>
<string>public.content</string>
</array>
</dict>
</array>

如果我现在在 Safari 中打开 PDF 并点击 Safari 的“共享”按钮,则不会提供我的应用程序。但是,如果我点击 PDF 本身,顶部会出现一个“打开方式”按钮,并且会列出我的应用程序。

这不是真正的问题,但它会阻止用户将照片导入我的应用程序,因为照片应用程序中没有“打开方式”菜单。

我也可以注册“分享”菜单吗?

最佳答案

不幸的是,这是不可能的,因为:

Safari 中的共享屏幕使用 UIActivityViewController 来显示可在页面上执行的许多事件。这些事件在 UIActivity.h 中定义,通常是系统定义的事件,例如 Post to FacebookPost to Twitter消息打印

要使非系统定义的事件出现在该屏幕中,必须创建自定义 UIActivity 子类,然后使用这些子类的数组初始化 UIActivityViewController

另一方面,“打开方式...”屏幕看起来很相似,但使用的是 UIDocumentInteractionController,它显示可以打开给定 URL/UTI 的应用程序(不要谷歌 UTI...)

关于ios - 使用 CFBundleDocumentTypes : why does my app not show up in the "Share" menu?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21937731/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com