FeedRoidの最近のブログ記事

若干のパフォーマンス改善とデザイン変更のみ。
ブラウザからshareボタンでSENDインテント受け取って購読に追加するって機能を実は手元では一度追加したんだけど、これ別にブラウザがブックマークレット対応すればそれでいい話じゃねってことに気づいて削除。まあインテントフィルタの練習にはなったので俺的にはそれで良し。
あと付けるとすればサービス化して自動チェックくらいだけど、正直別にどうでもいいかなという気もしてるのでしばらく放置して要望とか感想とか出たら考えます。
でもサービスは何か作ってみたいとは思ってたりする。
最近サーバ側の処理ばっか書いてるからUI実装ってどうしていいか勘どころが分からないんですよね。いやまあ3年ほど前は携帯のファーム書く仕事とかしてたりはしますが。

はー、さて。次は何作ろうかな。
とりあえずサービスとかコンテントプロバイダに関わるようなものを作りたいんだけど、ネタの方がない。困ったな。
ちらっと考えてたのは何らかのIME(OpenWnnでもいい)をコンテントプロバイダとして移植して、クライアント-サーバ型のIMEがAndroidで!みたいなの考えるだけ考えてはいたんだけど、俺のスキルでは正直きつい。IME関係全然作ったことないし。
でも今Androidに最も必要なのは効率的な入力方法だと思ってる。というかiPhoneも含めてフルタッチの携帯はもっと日本語入力を研究されるべき。フリック入力は優秀だと思うけど、漢字変換終わりすぎだよ。変換効率まで加味するとiPhoneですら入力はガラケーに劣ると思う。

動作が遅いというのがどの辺を指してるのか分からなくて一日悩みまくりんぐ...
SQLiteとかぽちぽちチューニングしてみたけどそんなに早くなった気はしない。俺が未読あんまり貯めないので元々パフォーマンスに影響しなかったってのもありまくる...

asahi.comとかサマリ空っぽでブラウザでページ開かんと読めないわけだけど、descriptionがまるっと空っぽかというとそうでもなくてトラッキング用のイメージと微妙にホワイトスペースとか改行とかだけ入ってたりする。なんで「サマリが空っぽなら...」みたいな処理はちょっとアレ。何をもってサマリ空っぽと見なすかという問題が出てくるし、いまいち美しくない。

iPhoneのアプリみたいにブラウザを丸ごとエンベッドしろというのはちょっとイヤ。というのは、iPhoneの場合ブラウザ起動してしまうとアプリが死んでしまうという今時硬派なシングルタスクUIを採用していらっしゃることが原因であって、Androidの既にメモリ上にいるブラウザをIntentで起動する分にはオーバーヘッドは非常に小さいです。
もちろんウィンドウが1個開いてしまうのでその分のオーバーヘッドはありますが、その程度です。ああいやうん、ウィンドウが開くオーバーヘッドは問題なんですけど、きっとGoogle様が改善してくれるに違いないしそういうことにしとかんとやっとれんものがあります。

はー、困った...。速度問題についてはちと保留。正直ビューア部分が重いというのは全然考えてなかったし、そもそも自分でどこが重いのか自体が分からないので、ここがこう重いのでこう変えてくれみたいな要望が出てから考えます。

動作が非常に遅い。フィードを読むためにいちいちブラウザを呼びに行くし、とても実用に耐えない。

おろ、そんなに遅いですかね。
表示にインラインのWebViewは使ってるけど、フィードのサマリに入ってる分についてはまとめてフェッチしてるんで、うちのADP1では割とペシペシ先を読める気がしてたんですが。
WebViewなのでテキストビューに比べりゃ遅いと言われてしまうと返す言葉もないんですが、ぶっちゃけプリセットのメーラがWebView使いまくりんぐなのでそういう作法なんじゃないかと思ってたりはします。

じゃなくて、問題はRSSのくせにサマリを吐いてくれないようなフィード(ex.朝日新聞)がサマリ空っぽでMenu→View→ブラウザ起動(ウボァー)というようなケースが問題視されてるのかなと思ってみたりもしますがその件かなぁ。
この場合、何らかの形でperma linkに飛ばないと本文読めねえよという問題は不可避で、PC版のLivedoorReaderだろうがiPhoneのアプリだろうがこの問題は実際回避できてなくて、しかも飛ぶ先は往々にしてフルブラウザ向けの重重なページなので重いんじゃボケーみたいな話にはなりますがこれは正直どーしようもねえなと。
サマリがemptyな時はインラインのWebViewで表示するというのも考えられますが、Intent起動するのに比べて多分そんなに早くならない(キャッシュ効率上むしろ遅くなる可能性もある)し、作法的にはやはりIntentでブラウザ起動すべきなんじゃないかという教条的な都合があったりなかったり。

もう一つ考えられるのは、未読フィードがもの凄く多いヘビーユーザの場合。
これはぶっちゃけ手抜きなんですが内部でキャッシュに使ってるSQLiteのテーブル設計が明らかに悪いので未読100フィード以下とかなら問題ないはずですがあまり多いと問題になります。
この辺は俺自身がたかだかその程度も未読溜めないので後回しとゆーか、俺未読1000フィード溜めるんだけどオイィ?みたいな人がいるようなら考慮します。

何となく2つめの件のような気がするんですが、サマリがない時の対応として「サマリがないよ、というメッセージを出してブラウザ開くボタンを明示的に見せる」か「インラインのWebViewでperma linkを開いてしまう」かの二択でどっちがましかなぁ。

・起動時同期オプション追加
・同期方法を割とまともにした

一応LDRのページってAndroidからアクセスすると専用ページに切り替わるけど、正直HTML版きついと思ってる。LDR使ってる人あんまりいないのかなぁ。
半ば習作とはいえ"crap"の一言もないのは若干の孤独を禁じ得ません。
HT-03A持ってないんで確認できないけど、日本語版のMarketに表示されてないとかだとワロス

・Setting画面から新規アカウント取得画面に飛ぶボタンが欲しい
・Setting画面からフィード一覧に飛ぶのに"Back"なのは初回にわけわからんので戻るボタンを明示的にどっかに置こう
・ブラウザからIntent貰って新規フィード登録
・フィード一覧でコンテキストメニューを追加し、フィードの削除とレート変更を追加する。...フォルダ移動はどうしようかね
・Fastladder対応...する意味あるんかね

個人的にソンkするPsychs先生のAeroReaderを現時点ではもの凄い勢いで猛烈にインスパなんとかしてます。

起動時にlivedoor Readerに毎回ログインしていたのをやめて少し速度を改善。
でもorg.apache.http.clientが結局遅い。何なんだろうなー。
読むと即全部既読にするかどうかのオプションを追加。全部既読にするか、一切既読にしないかの二択。うは。API的に1個ずつ既読にするとかできたっけかなぁ。
ExpandableListのデザインが変なのはもうなんか慣れてきた。どうでもいいや...

努力目標
Fastladderはだいぶ先。でも使ってる人少ないのかも。
クリップに対応する気なし。だって俺ハテブしか使わないし。
ブラウジング中にShare使ってIntent受け取ってフィード購読に追加するような機能を付けたい。必然的にフィード一覧からフィード消す機能も追加したい。
オフライン機能がクソ杉。全部クリアして全部取得とかクソ杉。地球に申し訳ない。もう少し何とかしたい。
チュートリアル的なものが一切ないのが不親切杉。まあ今はいいや。

習作がてらちまちま作っていたアプリをAndroid Marketに密かにうpしますた。
FeedRoidというlivedoor Readerクライアントです。英語のDescription付いてるのにFastladderに対応していないという顰蹙モノのアプリです。
一応フィード読んでピン打って...という最低レベルの機能はあるはず。
日本語リソースをエミュでしか確認していない(俺は英語のADP1しか実機持ってない)ため色々問題は噴出すると思いますがまあ習作ということで...。
何でこんなの作ったかというと俺が必要だからということに尽きます。

feedroid.png

TODO
・フォルダビューのデザインが変。ExpandableListのデザイン方法が良く分からなかったため
・Fastladderに対応していない。英語サポートあんましたくないからずっと非対応にしとこうかな...
・何かIntentに対応したい

ところでデフォの黒背景に白文字ってださくね。白背景に黒文字にしたくね。標準のTheme.Light未完成すぎね。

2010年4月

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

あわせて読みたい

あわせて読みたいブログパーツ

Twitter

Twitter Updates

    follow me on Twitter

    最近のコメント