Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

iOSのショートカットでブログの更新を監視してみた

More than 1 year has passed since last update.

今更ですが...

iOSのアプリでショートカットなるものがiOS12で搭載されました。
OSのアップデートの際に便利そう!と心踊りましたが、イマイチ手を出せずに昨日まで過ごします。

Qiitaを漁ってると、こちらの記事に出会い、便利そう!と再び心踊りショートカットをいじってみました。

簡素な作りではありますが、ブログの更新を監視するショートカットを作ってみたので、投稿します。

ショートカットの文法・考え方等は先程の記事が非常にわかりやすくまとまっていますので、
本記事ではあくまでも同実装したかにフォーカスを当てたいと思います。

背景

  • 最近某アイドルのブログを見るのが習慣になっているが、毎日更新されるわけではない
  • 毎日更新してるかどうか、ブラウザを立ち上げてまで確認したくはない (ブラウザはいつも開いているが、常駐するタブをなるべく減らしたいため)
  • 前回自分が確認したときから更新があった場合のみ、ブラウザを立ち上げたい

できたもの

ウィジェットにショートカットを追加し、ショートカットを作成するとボタンができる
IMG_3257.PNG


ボタンを押下し、前回確認時以降にブログが更新されている場合、Chromeでブログが開く
IMG_3258.PNG


ボタンを押下し、前回確認時以降ブログに更新がない場合、メッセージが表示される
IMG_3259.PNG

準備

入力と出力

入力: ショートカットウィジェットのボタンを押下する
出力: 更新がある場合、ブラウザでブログを開く

大まかな流れ

Evernoteメモをログ代わりとして、ブログの更新日とメモの更新日を比較するだけです。

  1. メモ(今回はEvernote)などのファイルを事前に用意する
  2. ブログURL(myURL)を入力し、ブログの更新日(blogDate)を取得する
  3. 1のメモの更新日(memoDate)を取得する
  4. blogDatememoDateを比較する
    1. blogDateのほうが後の場合、ChromeでmyURLを開く
    2. memoDateのほうが後の場合、更新されてない旨を表示する
  5. メモを更新する

実装

1. メモ(今回はEvernote)などのファイルを事前に用意する

表題の通り、メモを事前に作成します。

IMG_3260.PNG

2. ブログURL(myURL)を入力し、ブログの更新日(blogDate)を取得する

画像の通りですが、変数の定義は前のアクションの出力を値として持つことに注意です。

IMG_3260.PNG

3. 1のメモの更新日(memoDate)を取得する

こちらも画像の通りですが、何もしないは次のアクションに入力が渡されないようにするためなど、アクションを区切るのに使い、重宝しそうです。

IMG_3252.PNG

4. blogDatememoDateを比較する

変数を取得でこれまでに定義してきた変数を次のアクションの入力等に使うことができます。

4-1. blogDateのほうが後の場合、ChromeでmyURLを開く

IMG_3254.PNG

4-2. memoDateのほうが後の場合、更新されてない旨を表示する

結果を表示でテキストを通知で表示します。(Siriでも表示できるようです。)
テキストの中では変数を用いることができます。

IMG_3255.PNG

5. メモを更新する

EvernoteメモにblogDateを追記するようにしました。(メモが更新されるのであれば、内容はどうでもいいです。)
日時のままメモに追加しようとすると見辛いフォーマットのため、一度テキストに変換しYYYY/MM/DD HH:mmの形式にしています。
IMG_3256.PNG

まとめ

こんな粗末なショートカットですら1時間ほど掛けて作りました。。。
ある程度コーディングしたことがある人でも慣れが必要そうだなと感じました。
再掲になりますが、こちらの記事ではコーディング経験者だからこそつまづきやすいポイントを整理して頂いているので、非常に参考になりました。

iPhoneで不便と感じた際はまた作成してみようと思います。

以上です。

shayao3
某SIerにてクライアント技術に携わっています.
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away