在Android中,我使用意图让用户选择已安装的应用程序来发送URL,我希望在iOS版本的应用程序中具有相同的功能。有没有相当于以这种方式使用意图或我必须自己手动实现这个功能?
如果是这样,如何做到这一点,以便我没有静态数量的替代品,而不是让用户选择一个可以将字符串发送到另一个接收器的应用程序。
当然也欢迎有关如何实现这一点的建议。
答案 0 :(得分:0)
可能太晚了,但我仍然可以告诉你我所知道的......你可以使用Launch Services来做到这一点。
CFArrayRef handlerArray = LSCopyAllRoleHandlersForContentType(UTIString,kLSRolesAll);
这将返回一个包名称数组,它支持您提供的UTI类型。如果您不了解UTI类型,可以查看 here。第二个参数是应用程序注册的角色。检查 here是否有角色。
获得捆绑包列表后,您可以创建自定义视图以显示应用程序,并通过NSWorkspace API启动用户选择的应用程序, 比如openFile:withApplication:或launchApplication:
我不知道是否有直接的做法。