{% github it-boyer evernote-sdk-mac fd5da70 width = 30% %}

制作pod支持

  1. fork 并clone代码
1
git clone https://github.com/evernote/evernote-sdk-mac.git
  1. 创建pod spec索引文件
1
2
$ cd evernote-sdk-mac
$ pod spec create EvernoteSDK https://github.com/it-boyer/evernote-sdk-mac.git
  1. 编写配置文件 设置支持的平台,源码目录位置,指定忽略的文件等配置。
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
....
spec.osx.deployment_target = "10.7"
...
# ――― Source Code ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
spec.source_files  = "EvernoteSDK", "EvernoteSDK/**/*.{h,m}"
spec.exclude_files = "EvernoteSDK/internal/ENOAuthViewController*"

# ――― Project Settings ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― #
#spec.requires_arc = true
#spec.xcconfig = {"WARNING_CFLAGS" => '-Wno-nullability-completeness'}
# spec.xcconfig = { "HEADER_SEARCH_PATHS" => "$(SDKROOT)/usr/include/libxml2" }
end
  1. 验证EvernoteSDK.podspec 需要用参数:–allow-warnings ,由于源码验证过程中的警告提示问题,导致验证失败
1
$ pod lib lint --allow-warnings
  1. 发布到私库中 先在本地添加私库
1
2
3
$ pod repo add PodRepo https://github.com/it-boyer/PodRepo.git
#输出:
> Cloning spec repo `PodRepo` from `https://github.com/it-boyer/PodRepo.git`

开始发布过程中,也会验证,出现警告问题,需要添加--allow-warnings

1
$ pod repo push podRepo EvernoteSDK.podspec --allow-warnings
  1. 在项目中使用 编辑podfile文件
1
2
3
4
#加载私库
source 'https://github.com/it-boyer/PodRepo.git'
#依赖库
pod 'EvernoteSDK', '~> 1.2.0'

在执行pod install 即可。

API调用

在objc中调用

直接引入#import <EvernoteSDK/EvernoteSDK.h>

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
#import <EvernoteSDK/EvernoteSDK.h>
@implementation hello
-(void)test
{
    NSString *EVERNOTE_HOST = BootstrapServerBaseURLStringSandbox;
    NSString *CONSUMER_KEY = @"your key";
    NSString *CONSUMER_SECRET = @"your secret";
    [EvernoteSession setSharedSessionHost:EVERNOTE_HOST consumerKey:CONSUMER_KEY consumerSecret:CONSUMER_SECRET];
}
@end

在swift中调用

  1. 创建工程名-Bridging-Header.h 引入框架库
1
#import <EvernoteSDK/EvernoteSDK.h>
  1. 在main.swift 调用
1
2
3
4
5
import Foundation
let EVERNOTE_HOST = BootstrapServerBaseURLStringSandbox
let CONSUMER_KEY = ""
let CONSUMER_SECRET = ""
EvernoteSession.setSharedSessionHost(EVERNOTE_HOST, consumerKey: CONSUMER_KEY, consumerSecret: CONSUMER_SECRET)