27
27

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Pocket ObjC Sdkをアプリに組み込む方法

Last updated at Posted at 2013-12-17

Showrtpathブラウザ( http://showrtpath.com )のバージョンアップ開発でポケットをサポートしました。
Qiitaで、Pocket Objc SDKの組み込み方法を紹介したいと思います。

Pocket Objc SDKの入手方法

Pocket Objc SDKの入手方法の入手方法はいくつかあります。

上記のいずれかの方法で入手できます。

PocketのConsumerKeyの入手

Pocket Objc SDKを使うにはConsumerKeyの入手が必要です。

http://getpocket.com/developer/ で"CREATE NEW APP"ボタンで組み込みたいアプリを登録します。(要アカウント登録)
フォームが表示されますので入力します。

  • Application Nameは、アプリの名前を入力します。
  • Application Descriptionは、アプリの説明を入力します。
  • Permissionsは、Pocket APIで操作する権限を設定します。ポケットへページ登録する場合はAddが必要です。
  • Platformsは、アプリのプラットフォームを選択します。ShowrtpathブラウザはiPhoneとiPadで動作するので二つチェックしました。

登録が成功すると、http://getpocket.com/developer/apps/ にConsumerKeyが表示されるはずです。
プラットフォーム毎にConsumerKeyが生成されるようです。iPhone/iPad両方対応している場合は二つ生成されます。

コーディング

Pocket Objc SDKを使用して、ポケットにWEBページを保存したいと思います。

ConsumerKeyの設定

AppDelegateの- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptionsのタイミングで

[[PocketAPI sharedAPI] setConsumerKey:@"XXXXXXXXXXXXXXX"];

でConsumerKeyを設定します。

URLスキームの設定

XCodeで、
Identifier:com.getpocket.sdk
URL Schemes: pocketappXX
を設定します。
XXは例えばConsumerKeyが31361-d3h1df4b118daa7848d7c692である場合、pocketapp31361となります。

これは、PocketAPIを初回実行した場合、インストールされているPocketを起動してAPIの認証を行います。認証時に先ほどの、アプリ登録フォームの文章が表示されます。認証後、Pocketから自分のアプリのURLスキームpocketapp31361にコールバックされます。

つまりPocketAPIを使用する場合はPocketのインストールが必要になります。
そして、以下のようにしてコールバックのハンドリングします。

-(BOOL)application:(UIApplication *)application 
           openURL:(NSURL *)url
 sourceApplication:(NSString *)sourceApplication
        annotation:(id)annotation{

    if([[PocketAPI sharedAPI] handleOpenURL:url]){
        return YES;
    }else{
        // if you handle your own custom url-schemes, do it here
        return NO;
    }

}

[[PocketAPI sharedAPI] handleOpenURL:url] を`- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotationに記述します。

ここまで記述するとPocketAPIが利用可能になります。

PocketにWEBページを保存する

PocketにWEBページを保存します。

NSURL *url = [NSURL URLWithString:@”http://google.com”];
[[PocketAPI sharedAPI] saveURL:url handler: ^(PocketAPI *API, NSURL *URL, NSError *error){
    if(error){
        // there was an issue connecting to Pocket
        // present some UI to notify if necessary

    }else{
        // the URL was saved successfully
    }
}];

saveURLで、ポケットに保存されます。初回実行時は、アプリの認証が始まるので、Pocketが起動して認証画面が表示されます。認証後、WEBページが保存されます。

2回目移行は、通常に実行できるようになります。

ブログ( http://showrtpath.hatenablog.com/ )でも同記事を紹介しています。

27
27
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
27
27

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?