# App Extension SDK接入指南

# SDK 集成

注意:App Extension SDK 依赖于 岳鹰 iOS SDK 1.0.8 及以上版本,iOS SDK 及 App Extension SDK 请求前往《SDK下载》页面获取

提供两种集成 SDK 方式集成

通过 CocoaPods 集成

手动集成


# 通过 CocoaPods 集成方式

在工程的 Podfile 里对应的 Extension Target 中添加以下代码。


pod 'WPKAppExt'



示例


target 'ExtensionPodTest Today Extension' do

 pod 'WPKAppExt', :podspec =>'http://image.uc.cn/s/uae/g/3w/woodpecker-sdk/WPKMobi/xxx/WPKAppExt.podspec.json'

end


注意:真实的 pdospec 地址请前往《SDK下载》页面获取


保存并运行<code>pod install</code>,然后用后缀为<code>.xcworkspace</code>的文件打开工程

关于CocoaPods的更多信息请查看 CocoaPods官方网站


# 手动集成方式

  • 下载并解压 iOS App Extension SDK
  • 拖拽WPKAppExt.framework文件到Xcode工程内,如下图


  • 勾选 Copy items if needed 选项
  • 如有多个Extension Targets ,则一一进行勾选



# 初始化SDK

# 导入头文件

在工程的InterfaceController.h中导入头文件

<code>#import &lt;WPKAppExt/WPKAppExtSetup.h&gt;</code>

如果是其它类型的 Extension,请在入口的 ViewController.h 中导入

如果是 Swift 工程,请在对应的 bridging-header.h 中导入


# 初始化 Extension SDK

Today Extension,Share Extension 等,请在对应的ViewController.m的- (instancetype)initWithCoder方法中初始化, 暂时不支持Watch Extension


如果 Xcode 初始模板没有此方法,直接复制以下代码粘贴即可

  • Objective-C

- (instancetype)initWithCoder:(NSCoder *)aDecoder {

     self = [super initWithCoder:aDecoder];

     if (self) {

         [WPKAppExtSetup startWithApplicationGroupIdentifier:@"此处替换为您的 App Group Identifier"];

     }

     return self;

 }



  • Swift

required init(coder aDecoder: NSCoder) {

     WPKAppExtSetup.startWithApplicationGroupIdentifier("此处替换为您的 App Group Identifier")

     super.init(coder: aDecoder)

 }




# 宿主App 的初始化设置


需要使用带applicationGroupIdentifier参数的start方法,并传入你设置的App Group Identifier。


[WPKSetup startWithAppName:@"xxxx" applicationGroupIdentifier:@"此处替换为您的 App Group Identifier"];