11月 12

前回まではこちら。(結果的にシリーズ化しております。)

色々と調べることが積み重なっていますが、とりあえず使用できるようになることをまず最優先に、巡回をもうちょっと楽に実行する方策を考えます。現状だと、TerminalかSSHでいちいちシェルスクリプトをたたかないといけないので。

Webで検索すると以下の情報が見つかりました。(というかmoyashiさんのマネばかりしているのが現状だが・・・)

この方法でシェルスクリプトをアプリケーションとして登録可能、ということだったので、早速やってみました。

大まかな流れとしてはいかになります。

  1. アプリケーションをhoge.appというフォルダにまとめる
  2. フォルダ内に各種ファイルを用意する(Default.png、Info.plist、PkgInfo、icon.pngの4ファイルがあればとりあえずよい模様です。(要確認))
  3. Info.plistをシェルスクリプト用に書き換える
  4. 出来上がったフォルダ(hoge.app)をSCP等で/Applicationsにコピーする
  5. SSHからフォルダおよびシェルスクリプトに対して実行権限を与える
  6. ipod touchを再起動する(ipod touch自体ではなくてもよい模様)

ひとりぶろぐさんのところでサンプルとして出されているInstBuddy.appはその存在自体がすでにサンプルです。さらにそのサンプルプログラムの動作が「/var/root/Media/Installに.appをコピーしてから実行すると一発でインストールが完了する」というもので、インストールの際に便利だよ、というものです。

はじめ、InstBuddy.appを使わないとシェルスクリプトをアプリケーションとするものが作れないのかと思って混乱してしまいました。(私の頭が悪いだけですが。)

というわけで、とりあえずipod touch上のアプリをつつくと、自動巡回~オフライン閲覧ができる。というところまではできました。今後積み残しの部分を消化しつつ、さらに改良していきたいと思います。

(追記)

と、思ったのですが、何度か実行してみると、全く何もデータが取得できないことや、1つ目のURLに関して処理を実行したら、そこでスクリプトが終わってしまうケースが頻発しています。wgetの処理が完了していないのに、先に進んで(終わって)しまっているのか?これも引き続き消化しなくてはいけない積み残しになってしまいました。できれば、wgetの動作状況をリアルタイムに表示したいんだけど・・・。

11月 01

iPod touchでWeb自動巡回〜オフライン閲覧を実現したいなんていう事を書きましたが、それを実現している人を発見!

動きとしては以下のようなものだそうです。

  1. Mobile Safariの「crawling」というフォルダに登録されたURLを標準出力に出力する
  2. その出力をWgetに食わせてサイトを取得する
  3. 取得したサイトをローカルのWebサーバーで見る

個人的には1の部分はRSSを登録しておいて、そのRSSで配信されるエントリを・・・と行きたい所ですが、まずはあせらず作っていただいたアプリを説明されている手順で導入してみました。

※この手順はJailbreak済みが前提です。

野良リポジトリの登録

まずは以下の手順を元に野良リポジトリを登録させてもらいます。

  1. まずhttp://hpcgi3.nifty.com/moyashi/ipodtouch/repository.cgiにアクセス・・・するが「ダウンロードに失敗しました」と出てしまうのでこの手法はあきらめました。
  2. installerのSourcesのタブで「Edit」「Add」とNavigationBarのボタンを押し、表示されたダイアログにリポジトリのURLを手打ちで登録。→成功

safaribm2stdoutのインストール

  1. Installer.appから「Network」→「safaribm2stdout」をインストール・・・しようとしたところエラーが出てしまう。
    image

あきらめる

ということで、今日はサーバーの調子が悪かったのでしょうか?ここまでで断念しました。うーん悔しい。

別の方法

でも、よく考えてみると、単純にWgetで取得したものをローカルのWebサーバーで見ているだけですよね??

ということで以下の作戦を考えてみました。

  • WgetでRSSを取得(私ははてなRSSを利用しているのではてなRSSがはいてくれているRSSを取得することにします。)
  • 取得したRSSをperlなりrubyなりで解析、加工して、エントリのURLを標準出力に出す
  • 上記出力をWgetに渡し、ダウンロードする
  • それをローカルのWebサーバーで見る

特にどこにも技術的に不可能なところはなさそうです。問題はperlなりrubyなりがipodで動くのかというところですが、普通にCydiaにRubyがあったのでいけそうです。

Webサーバーとしてどれを使うと良いかは以下の比較記事がありました。

単純にWgetで取ってきたものを見るだけならiSpitでいいかもしれませんね。

ということでインストールしようとしたのですが・・・。今度はパッケージが見つかりません。明らかにInstallerがおかしい?

他の皆さんはどうやら普通にインストールできているようなので、おそらく私の環境が変なのでしょう。(悲)

後日再挑戦します・・・。

10月 09

iPod touchに1番欲しい機能は何かと聞かれたら、私は迷わずオフラインでのweb閲覧機能をあげます。これが出来ればもの凄く評価が上がると思うのですがなぜかこの機能がありません。もしかしたら企業戦略なのかもしれませんけれども。

で、そこを補完するためのアプリケーションがいくつか存在します。

LDR touch(無料!)
Live door readerのiPod touch, iPhone用のクライアントです。他にもいろいろRSSリーダーはありますが、これの素晴らしい所は「オフラインでも利用可能」な所です。

が!

これではオフラインRSSフィードを読むことは出来ますが、RSSフィードとして全文を配信していないサイトに関しては、途中までしか記事を読む事が出来ません。これでは私は満足出来ません。逆にiPhoneユーザーにとっては非常につかえるソフトだと思います。

Instapaper(無料!)
オフラインできちんと記事全体が読める、ということに関してはInstapaperが素晴らしいです。PCでブラウザに記事登録用のブックマークレットを登録しておき、「後で読もう」と思った記事を開いた状態でブックマークレットを押すだけで登録は完了。あとはiPod touch, iPhoneにてupdateボタンを押せば記事が取り込まれ、オフラインでも読む事ができます。

が!

これでは、能動的にサイトの登録からupdateを自分で行う必要があり私の要望にマッチしません。

全自動で登録しているサイトを巡回し
ローカルに取込み
オフラインで閲覧可能
であって欲しいのです。

残念ながらこれらの要望を満たすアプリケーションを私は知りません。しかし、アプリケーションの組み合わせ次第ではこれが実現出来るのではと考えています。あるいは自分でアプリケーションを自作するかもしれません。

当面はこれをipod touchで実現すべくがんばってみたいと思います。「私はこんな風にしているよー」という方がいればぜひ方法を教えてください!