ios 跨软件传输数据之Share Extension创建与分享(一)

前言

​​ios跨软件分享是基于Share Extension和协议跳转实现的,本篇中讲主要讲解Share Extension是如何创建的。

什么是Share Extension?

shareExtension苹果在iOS8后开放给用户使用,俗称分享扩展是应用扩展的一种(包括:分享扩展,Today扩展、Action扩展、键盘扩展等等),分享扩展允许开发者扩展应用的自定义功能和内容,能够让用户在使用其他app时使用该项功能。扩展不是一个可以独立使用的应用,它必须依附在一个应用上才能发挥作用,有点像一个动态库,所有的app都可以使用,需要时系统会调用这个扩展,临时搭建一个环境来完成一些事情,完成后系统终止该扩展的运行。

Share Extension

  • 注:扩展不能单独创建,必须依赖于应用工程项目

创建Share Extension

1、打开项目设置,在TARGETS侧栏地下点击“+”号来创建一个新的Target,如图:

ios 跨软件传输数据之Share Extension创建与分享(一)_第1张图片
创建Share Extension

2、然后选择”iOS” -> “Application Extension” -> “Share Extension”,点击“Next”。如图:

ios 跨软件传输数据之Share Extension创建与分享(一)_第2张图片
创建Share Extension

3、给扩展起个名字,这里填写了“Share”,点击“Finish”。如图:

ios 跨软件传输数据之Share Extension创建与分享(一)_第3张图片
给扩展命名

4、这时候会提示创建一个Scheme,点击“Activate”。如图:

ios 跨软件传输数据之Share Extension创建与分享(一)_第4张图片
点击“Activate”

那么,直到这里创建Share Extension的工作就算是完成了。接下来可以先进行一下编译运行。这里跟做App开发的时候会稍微有点不一样。因为Extension是需要Host App(宿主应用)来运行的。所以,XCode中会弹出界面让我们选择一个iOS的App来运行Extension。如图:

ios 跨软件传输数据之Share Extension创建与分享(一)_第5张图片
选择宿主

这里我选择了XCode建议的应用Safari,然后点击“Run”来进行调试运行。XCode会启动Safari,如图:

ios 跨软件传输数据之Share Extension创建与分享(一)_第6张图片
运行效果

能看到Safari中间的分享按钮是灰色不可用的。别急,你还没打开一个网页呢_。我们随便点开一个网页,可以看到分享按钮变为激活状态。点击分享按钮就会弹出分享菜单,如图:

ios 跨软件传输数据之Share Extension创建与分享(一)_第7张图片
分享界面

可以看到刚才建立的Share扩展已经显示在面板上了,如果你没有发现自己的扩展,那么你可以将菜单滑动到最右边,在“更多”选项中激活自己的扩展。如图:

ios 跨软件传输数据之Share Extension创建与分享(一)_第8张图片
分享显示开关

我们点击自己创建的分享项,其弹出一个分享窗口。如图:

ios 跨软件传输数据之Share Extension创建与分享(一)_第9张图片
分享创建的窗口

备注:如果在更多中没有找到Share拓展,有可能是创建的Share拓展版本太高,如下图所示:


ios 跨软件传输数据之Share Extension创建与分享(一)_第10张图片
版本配置

下篇中将讲解Share Extension需要做哪些配置

  • ios 跨软件传输数据之系统Share Extension创建与分享(一)
  • ios 跨软件传输数据之Share Extension的配置与外部数据获取(二)
  • ios 跨软件传输数据之Share Extension将分享数据传递给容器程序(三)
  • ios 跨软件传输数据之Share Extension容器程序数据处理与上线(四)

你可能感兴趣的:(ios 跨软件传输数据之Share Extension创建与分享(一))