チョモランマに登るには。

Androidアプリ開発の初心者が立派な開発者になるまで

Evernote API でアプリをEvernoteと連携しました。

こんにちは。
Androidの読書ノートアプリ、フロムブックをEvernoteと連携できるようにアップデートしました。

アプリはこちら。
書き抜き読書ノートアプリ フロムブック - Google Play の Android アプリ

連携すると、本から書き抜いた文章や読書メモをEvernoteに書き出すことができます。

アプリ側から読み込むことは現状できません。
今後追加でつけるかもしれませんし、バックアップという意味合いではDropboxを使うようにするかもしれません。

というのも、Evernote APIが思いのほかややこしくて・・・
もとい僕の頭が足りなくって結構手間取ってしまったんですよね。


とにかくいろいろハマちゃって手さぐり状態になってしまって、時間がかかるともう滅入ってくるので、とりあえず書き出す機能だけ先にアップデートしました。

このフロムブックというアプリの目的は、「あれ?あの言葉ってどの本に書いてあったっけ?」っていう時のためにあるので、Evernoteに書き出すことでEvernoteの保存力と検索力によって、よりアプリの目的が達せられるようになったと思います。

あれ? そういえばこのアプリ自体このブログに紹介してなかった気がする・・・。
アプリ紹介はまた今度書きますね、順番めちゃくちゃですね。

Evernote APIを使う


先ほども書いた通り僕は右往左往して手さぐり状態で実装したので見せられるようなコードではありません。

なので一応参考にしたサイトなどを紹介しておきたいと思います。


第1回 本連載の目的, Evernote APIについて:AndroidでつくるEvernote連携アプリ|gihyo.jp … 技術評論社

開発に至るまでの準備はここを見れば分かると思います。

特徴としては、開発時には開発用のサーバーを使うという点ですね。
開発が終わったら製品用のサーバーでも使えるように申請して、その返信がきたら接続先を製品用に変えて、ようやく公開となります。


Evernote クラウド API — Android クイックスタートガイド - Evernote Developers

SDKの中にサンプルがあるので、大体はそこから学ぶことになります。
EvernoteAPIを構成するキモとなるものにUserStoreとNoteStoreというクラスがあるので、そういうのを使うんやなということを知っておく必要があります。

コアとなる概念 - Evernote Developers

サンプルコードをネットで探すと結構ありますが、どの方もそれぞれ書き方が違っていたり古かったりして、なかなかそのまま全部コピーして動くものはありませんでした。
なので、困った時はその都度その部分だけを参考にして進んでいきました。
参考にさせて頂いたのはこのあたり。

moco β版 更新ログ: Evernote API を使ってみる (3) ノートブック作成・更新・取得
naotawool/evernote-api-example · GitHub

あと、Evernoteのノート本分は ENML(Evernote マークアップ言語)という形式なので、書き込むときは以下のように宣言を前と後ろにつける必要があります。

gistd3654ddf5f200ec5a9a9
もし本文に改行があるなら、<br>に置き換えないと改行されません。

ノートの作成 - Evernote Developers

そんなところでしょうか。

初めてgistを載せてみましたが、はてなが連携しててワンタッチポンでいけるんですね。
これからもなんかコード載せていこうかな。

ありがとうございました。