2010年12月4日土曜日

[v0.0.34.10]GcalSearch: A mobile searcher for Google Calendar for Android

A mobile searcher for Google Calendar for Android

※本ブログは6月末で他サイトに移設する予定です。これまで閲覧ありがとうございました。
[note] this blog is planed to be moved to other site until end of June. See you in there

by KrasavKana

Website:
http://krasavkana.blogspot.com/



Thank you for downloading GcalSearch. If you think you have found a bug, or have
suggestions for new features or improvements,
please email krasavkana@gmail.com.


Version history


v0.0.34.10
* autolink supported, which allows users to invoke web-browser to access URL beginning with 'http' in the content view


v0.0.33.10
* well input supported, which allows users to input calendar list data
and some control commands like color, font-size... from well

* Help menu and About menu implemented

* Setting menu implemented

* emphasize keywords in the content, such as colored, slanted, bold, or
larger font

* clipboard copy in the content view

* copy history into keyword for re-searching

* progress animation on time-consuming processes like HTTP downloading

* internal database format version up(1 to 2)

* a bug in sdcard reading when using UTF-8 file

* a bug in positioning view when returning from other views



v0.0.27.9
* a bug fixed. checkboxes on calendar list dont work when appeared again



v0.0.27.8
* a bug fixed when output including html tags

* some changes on result view



v0.0.26.7
* Initial Release.

<アプリの簡単な紹介と目次>

 Googleカレンダの検索アプリ。PC版で用意されているカレンダ
検索機能が標準装備されていないandroid端末で、検索が行えます。限定公開URLでアクセス
するのでカレンダを誤って壊してしまう心配もありません。


 限定公開URLを設定して検索窓にキーワードを入れて検索ボタンを
押すだけ。


<特長>
<使い方>
<カレンダリストの新規作成>
<カレンダリストの元となるテキスト形式>
<表示の種類>
<カレンダリスト画面>
<カレンダ情報画面>
<検索履歴画面>
<検索結果画面>
<検索結果詳細画面>
<ウェル画面>
<メニュ>
<設定>
<OS版数、動作確認端末など>
<制限および注意>


c2010 KrasavKana

<特長[Features]>

 ◆特長① Googleカレンダの検索が行えます。PC版で普通に
使えるカレンダ検索機能が、なぜandroid端末に標準装備されていないのか不明ですが、本アプリにて
そうした検索機能を補うことができます。Googleカレンダにアクセスする際、限定公開URLを使って
読み込みモードでアクセスするので元のカレンダを誤って壊してしまう心配もありません
カレンダを用途に応じてprivate,work,communityなどと複数個に分けて管理している場合も
多いと思います。本アプリに、各カレンダに対応した複数の限定公開URLを登録しておけば
一度にアクセスできます。
複数のカレンダから検索する場合、検索対象のカレンダを絞り込めると便利ですが、
本アプリではそれをカレンダリストのチェックボタンのOn/Offで実現します。
 ◆特長② Wellからの入力をサポートします

あらかじめ限定公開URLに関する情報をPCでリストにしておきメールでケータイに送付しておきます。
ケータイメールのコピペ機能を使って本アプリのWELL画面に貼り付けて作成ボタンを押すだけで、
カレンダアクセスの環境が揃います。
 ★注意 外部媒体(Sdcard)からの取り込みもできます

◆特長③ キーワードの設定やカレンダの絞込みのほかに、
検索開始日と検索期間(日数)、最大検索数(1つのカレンダ当り)を指定できます

◆特長④ 検索結果(イベントタイトルおよびイベント内容)に
含まれる文字列のうち検索キーワードにマッチした箇所に色付けします。元データはもちろん変わりません。
 ★注意 色づけの他に、太字、斜字、大きめの字、なにもしない
を選択できます

◆特長⑤ 検索履歴を再利用できます。検索履歴の中から適当
なものを長押しして検索キーワードを検索窓にコピーできます



c2010 KrasavKana

<使い方>

Step1:メニュボタンでメニュを出し「WELL」を選択して
あらかじめ作成しておいた「限定公開URLのリスト」を貼り付けてOKボタンを押す。
すると自動でカレンダリストの表示画面に移動する

Step2:リスト表示するので、チェックボックス(検索対象(On)/非対象(Off))をチェックする。
検索したいカレンダ名横のチェックボックスをチェックします

★注意 チェックボックスの状態の初期値は上記「限定公開URLのリスト」に
記載されたとおりになります
Step3:検索窓に検索したいキーワードを入れて検索ボタンをタッチする。

★注意 検索でなにも見つからない場合は画面に「見つかりませんでした」が出ます。
その場合にはキーワードや他の条件を変更して再度検索してください
Step4:検索の結果1つ以上見つかった場合、自動で検索結果画面に切り替わります。
検索結果はリスト表示され、検索された順番(早く検索されたものほど上に、の意味)にイベントのタイトルが並んでいます。
リスト中のイベントタイトルのいづれかをタッチすると、(結果詳細画面に)画面が切り
替わってイベントに関するタイトルと内容を個別表示します

★注意 イベントの開始時刻や更新時刻等で検索を順番づけたい場合や昇順・降順
の指定等は、本アプリではサポートしていません。代わりに、次のような文字列を限定公開URLの後につけてカレンダ情報として
保存しておきます。start-min,start-max,max-resultsはアプリがgoogleへの問い合わせ処理(HTTP-GET)中に
オプションとして付加しています
   orderby=starttime  開始時刻で並び替え(なにもつけないと更新時刻になる)

   sortorder=ascending  昇順(descendingを指定すると降順)

   futureevents=false  将来/過去のイベントを対象とするかの指定(省略値はfalse)

   singleevents=true  繰り返しイベントを展開しないか/(するか)の指定(省略値はtrue)

   start-min=1970-01-01  指定日(時刻も指定できる)以降を対象とする(省略値は1970-01-01T00:00:00)

   start-max=2030-01-01  指定日(時刻も指定できる)以前(その時刻や日は入らない)を対象とする
(省略値は2031-01-01T00:00:00)

   max-results=10  最大出力数(省略値は25)
Step5:結果詳細画面の下段に並んでいるボタンを使って検索結果
を個別に参照します

戻りボタン:リスト表示に戻る

前ボタン:検索結果のリストの前(上)の検索結果画面に移動する(なければ移動しない)

次ボタン:リストの次(下)の検索結果画面に移動する(なければ移動しない) 
Step6:「戻りボタン」でリスト表示に戻ると検索窓が現れるので
対象カレンダや条件を変えて再度検索します

<トーストやアラート集>

限定公開URLですか? 「限定公開URL XML」で検索してみてください

[意味] 限定公開URLの最初のフレーズは(googleカレンダの仕様が変わらない限り)同一で、その
チェックをしたところ、マッチしなかったです。
[対処] 限定公開URL自体が正しそうなら、その前の情報は?
対象/非対象、カレンダ名等を”,”で区切っていますか?
解釈不可能な箇所があります
[意味] テキスト形式が間違っているようです
[対処] 対象/非対象、カレンダ名等を”,”で区切っていますか?空行はありませんか?
ファイルがありません

[意味] sdcard等の外部媒体のファイルを読み込み時、ファイルが見つかりませんでした
[対処] ファイル名がただしいか(readsd.txt)確認してください
見つかりませんでした

[対処] 対象カレンダがない場合にもこのようにでますので、チェックしてください。キーワードや
検索条件を変えてください
接続できませんでした

[対処] 限定公開URL自体が間違っていたり、正しくてもインタネット接続ができなかったり、
いろいろな場合が考えられます(アプリのバグである可能性もあります)。エラーコードがでますので、
「HTTP Status Code」等で調べてみてください。




1xx:情報提供 2xx:成功 3xx:転送 4xx:クライアントエラー 5xx:サーバエラー

限定公開URLを表示する設定にしてください

[意味] 非表示オプションがあり、それが非表示(隠す)に設定されていながら、
限定公開URLを表示しようとしています
[対処] 設定画面(メニュ-設定)から設定を変更してください

テキスト形式が正しくありません
[意味] テキスト形式が間違っているようです
[対処] 対象/非対象、カレンダ名等を”,”で区切っていますか?空行はありませんか?
新規作成モードで読み込みます。

[意味] sdcardからの読み込み前に既存の設定を消去します
[対処] 確認してください。特に設定画面で設定を変えてもモードがすぐに変更されない
場合があります。よければ次に進み、設定が反映されていないようなら、一旦終了して
再度起動するか、画面を縦横にまわして見る等してみてください
追加モードで読み込みます。
[意味] sdcardからの読み込み前に既存の設定を消去しません
[対処] 確認してください。特に設定画面で設定を変えてもモードがすぐに変更されない
場合があります。よければ次に進み、設定が反映されていないようなら、一旦終了して
再度起動するか、画面を縦横にまわして見る等してみてください




c2010 KrasavKana

<カレンダリストの設定方法[newcard]>

カレンダリストの設定方法は2通りあります

設定方法1:ウェル(Well)画面からの読み込み


「メニュ」から「ウェル」を選択して文字入力可能な画面にしたあと、
「カレンダリストの元となるテキスト形式」に従い入力します。

 ★注意 数個程度のカレンダの限定公開URLなら手入力
できますが、それ以上だと、PC等で作ったテキストをメール等でケータイに送って、
コピペした方が、全然楽です

設定方法2:sdcard(外部媒体)からの読み込み


PC等で作ったテキスト(WINDOWSのメモ帳やTeraPadなどで作成します)を
sdcardにコピーして、「メニュ」の「外部読込」を選択して入力します

 ★注意 テキストの格納場所は
 
/sdcard/gcalsearch/readsd.txt
 ★注意 sdcardの場合は先頭行に1カラム目から
*gcalsearch 行が必要です(行末まで読み飛ばされます)

★注意 カレンダ名称に日本語を含むときはUTF-8形式で
作成する必要があります。TeraPadでは名前を指定して保存(コードはUTF-8N)
が無難です


c2010 KrasavKana

<カレンダリストのテキスト形式[Format]>

・数字の0または1
・カレンダ名
・限定公開URL

を1行にカンマ(,)で区切って並べます。

(例の始まり)

0,private,http://www.google.com/calendar/feeds/account-name%40gmail.com/private-xxxxxx/basic

0,work,http://www.google.com/calendar/feeds/account-name%40gmail.com/private-xxxxxx/basic

0,community,http://www.google.com/calendar/feeds/account-name%40gmail.com/private-xxxxxx/basic

(例の終わり)

限定公開URLは、
http://www.google.com/calendar/feeds/account-name%40gmail.com/private-xxxxxx/basic
のような感じの文字列です。「限定公開URL XML」で検索(googling)してみてください

 ★注意 限定公開URLは取り扱いに注意してください。他人が
入手してアクセスすると(ご自分の設定した公開ポリシーにかかわらず)容易に内容を見ることができます。
その疑いのあるときはPCからGoogleカレンダにアクセスして、限定公開URLのリセットを行ってください。
そうすればまったく新しいURLが設定され、古いURLではアクセスできなくなります
★注意 イベントの開始時刻や更新時刻等で検索を順番づけたい場合や昇順・降順
の指定等は、本アプリではサポートしていません。代わりに、次のような文字列を限定公開URLの後につけてカレンダ情報として
保存しておきます。



(例2の始まり)

0,private,http://www.google.com/.../private-xxxxxx/basic?orderby=starttime&sortorder=ascending

(例2の終わり)


ただし、start-min,start-max,max-resultsはアプリがgoogleへの問い合わせ処理(HTTP-GET)中に
オプションとして付加しています
   orderby=starttime開始時刻で並び替え(なにもつけないと更新時刻になる)

   sortorder=ascending昇順(descendingを指定すると降順)

   futureevents=false将来/過去のイベントを対象とするかの指定(省略値はfalse)

   singleevents=true繰り返しイベントを展開しないか/(するか)の指定(省略値はtrue)

   start-min=1970-01-01指定日(時刻も指定できる)以降を対象とする(省略値は1970-01-01T00:00:00)

   start-max=2030-01-01指定日(時刻も指定できる)以前(その時刻や日は入らない)を対象とする
(省略値は2031-01-01T00:00:00)

   max-results=10最大出力数(省略値は25)
   上記のオプションのつけ方にはルールがあることに注意してください。HTML等書いているひとには当たり前の
ことかも知れませんが、各オプションを「&」または「?」で区切ります。オプションを1つつけるときは「?」を、2つ以上つけるときは
2つ目以降は「&」で区切ります(上記例2のようにします)。サーバが「?」以降をオプション群として認識し、そのオプション群を「&」で
区切って処理してくれます

 ★注意 カレンダ名は日本語でもかまいませんが、
その場合はUTF8のコードである必要があります。
 ★注意 外部媒体から本テキストを読み込ませる場合には
先頭行に*gcalsearch 行が必要です。Wellからの入力の場合は必要ありません



c2010 KrasavKana

<表示の種類[View]>

 画面はヘルプ画面、設定画面のほかに5種類あります 。
メイン画面(カレンダリスト、検索履歴、検索結果)、補助画面(限定公開URL)、補助画面(結果詳細)、
WELL画面、編集画面(編集・追加)


[メイン画面:カレンダリスト(中段部分)]

カレンダリスト作成時につけたカレンダ名のリストが表示されます。カレンダ名をタッチするとその内容が表示されます
カレンダ名を長押しすると編集モードになりカレンダ名と限定公開URLの内容を修正できます。

[補助画面:限定公開URL]

カレンダ名、限定公開URL、および検索対象にする/しないを示すチェックボックスが表示されます
また、下段には、

戻りボタン:リスト表示に戻る

前ボタン:リストの前(上)の問題解答画面に移動する(なければ移動しない)

次ボタン:リストの次(下)の問題解答画面に移動する(なければ移動しない)

が表示されます。これらのボタンを使ってカレンダリスト画面に戻ったりリストの前後にあるカレンダ情報を表示します。
 ★注意 設定の限定公開URL表示モードがOffになっていると本画面は表示されません


[メイン画面:検索履歴(中段部分)]

 検索時に設定した検索条件が履歴として表示されます。

 ★注意 履歴は新しいものから時系列で表示されます

[メイン画面:検索結果(中段部分)]

 検索時に結果が古いものから時系列順に表示されます。

[メイン画面:モード設定ボタン(共通下段部分)]

メイン画面の下段のボタンを押すと、中段のリスト表示の内容が、それぞれ、カレンダリスト、検索履歴、および検索結果
になります。上段部分と下段部分のボタンの見え方はほぼ同じです。

カレンダボタン:画面中段にカレンダリストを表示します

検索履歴ボタン:画面中段に検索履歴を表示します

検索結果ボタン:画面中段に検索結果を表示します
[メイン画面:共通上段部分]

検索窓、検索ボタン、検索開始日指定スピナ、検索日数スピナ、および最大検索数スピナがあり、
ここに検索したいキーワードや検索条件を入力して検索ボタンを押します

 ★注意 検索結果が1以上見つかったときは検索結果画面に移動します
 ★注意 検索開始日スピナは -365,-180,-90,-30,-14,-7,0,7,14,30,90,365 から
選択できます。負の数は過去を正の数は将来を示します。例えば-365は1年前、-30は1ヶ月前を意味します


 ★注意 検索日数スピナは 1,7,14,30,90,365,730 から
選択できます。例えば 1は1日、14は2週間、730は2年間を意味します


 ★注意 最大検索数スピナは 5,10,15,30,50,100 から
選択できます。カレンダ名1つについての最大数ですので、カレンダ名の数 x 最大検索数 を検索すること
になり、時間がかかりますので、注意してください。30以上の大きな数の指定は、対象カレンダ名を絞ってから
使うとよいでしょう



[補助画面:WELL入力]



 ・Sdcardなどの外部媒体でデータ移送できない機種で使いたい
 ・PCでカレンダ情報を編集したカレンダリストをメール送付してカレンダリスト登録して使う
などといった状況を想定して、WELL画面にカレンダリストに関するデータを貼り付けるだけで
カレンダへのアクセス環境が揃えられます。
c2010 KrasavKana

<メニュ[Menu]>

<通常のメニュ(メニュボタンを押したときのメニュ)>

  メイン画面からメニュを表示できます。その他の画面からは、「戻る」ボタンで
一旦メイン画面に戻ってから、メニュを起動してください。




[履歴消去]:検索履歴を消去します


[結果消去]:検索履歴を消去します


[ヘルプ]: ヘルプ画面を表示します


[設定]: 設定画面に移動します



[終了]: アプリを終了します。設定画面で各種の設定を変更したとき
設定を有効にするために一旦終了して再度起動します。もしくは画面の縦横をモード変更してみます



[アプリについて]: アプリの更新履歴について表示します


[ウェル]: WELL画面に移動します。(限定公開URLを含む)カレンダリスト情報
やその他の設定をここにコピペして作成ボタンを押すことで、googleカレンダ検索のための環境が整います


[外部読込]: SDカードなどの外部媒体から限定公開URLに関する情報や
その他の制御コマンドを読み込みます


[追加]: 限定公開URLに関する情報を1つだけ追加するための
追加画面に移動します。追加が多い場合には「ウェル」や「外部読込」から追加モードを使うことを進めます


<長押しメニュ(画面をタッチしたまま2秒ほど待って出てくるメニュ)>


[編集]:メイン画面でカレンダリストのいづれかのカレンダ名
を長押ししたときに出てきます。カレンダ名と限定公開URL、および検索対象On/Offの編集ができます


[検索窓にコピーします]:メイン画面で検索履歴のリストのいづれかの
キーワードを長押ししたときに出てきます。検索窓にコピーして再度検索を行わせることができます


[タイトルをコピー]:サブ画面(検索結果詳細)の画面を
長押ししたときに出てきます。画面に出ている「タイトル」をクリップボードにコピーします

[内容をコピー]:サブ画面(検索結果詳細)の画面を
長押ししたときに出てきます。画面に出ている「内容」をクリップボードにコピーします



c2010 KrasavKana

<設定[Settings]>

設定画面からアプリの挙動をいろいろ変更することができます。

<カレンダリストの設定>




[限定公開URLを隠す]:
カレンダリストの限定公開URLが他人に知られると
プライベートなカレンダの内容も他人に知られる可能性があります。
本オプションで
   On:カレンダ名のリストは表示するが、その内容(限定公開URLの見える画面)は表示しない
   Off:カレンダ名のリストを表示し、その内容(限定公開URLの見える画面)も表示する
を指定します。チェックボックスでOn/Offします

android:key="url_veil_key"
android:defaultValue="true"



[新規作成モード]:
 ウェル画面やsdcardからカレンダリストを読み込む際の
モードを指定します
   On:既存のリストを消去して新規に作成するか
   Off:既存のリストを残したまま追加作成するか
チェックボックスでOn/Offします。

★注意
 WELL画面の場合、現在の状態はタイトルバーに「Clr」「Add」
のように表示します。外部媒体読み込みの場合は確認メッセージ
「新規作成で読み込みますがよろしいですか」
「追加作成で読み込みますがよろしいですか」
を出します。


android:key="calendar_clear_key"
android:defaultValue="true"


[カレンダ名の表示設定]:カレンダリストの
①文字色
②フォントサイズ
③背景色
を変更するときに使います。それぞれ選択リストから選択します


android:key="calendar_color_key"
android:defaultValue="800000"
android:key="calendar_fontsize_key"
android:defaultValue="24"
android:key="calendar_bgcolor_key"
android:defaultValue="800000"


[限定公開URLの表示設定]:カレンダリストの
①文字色
②フォントサイズ
③背景色
を変更するときに使います。それぞれ選択リストから選択します


android:key="url_color_key"
android:defaultValue="ffffff"
android:key="url_fontsize_key"
android:defaultValue="12"
android:key="url_bgcolor_key"
android:defaultValue="800000"


<検索履歴の設定>



[履歴表示機能]:
検索履歴の機能について
   On:検索履歴を残すか
   Off:検索履歴を残さない
を設定します。チェックボックスでOn/Offします


android:key="history_on_key"
android:defaultValue="true"



[背景色]:
検索履歴画面の表示について
①背景色
を設定します。それぞれ選択リストから選択します


android:key="history_bgcolor_key"
android:defaultValue="800000"



[検索履歴(1行目)の設定]:
検索履歴のリストの1行目について
①文字色
②フォントサイズ
を設定します。それぞれ選択リストから選択します


android:key="history_color_key"
android:defaultValue="000000"
android:key="history_fontsize_key"
android:defaultValue="24"



[検索履歴(2行目)の設定]:
検索履歴のリストの2行目について
①文字色
②フォントサイズ
を設定します。それぞれ選択リストから選択します


android:key="historyattribute_color_key"
android:defaultValue="800000"
android:key="historyattribute_fontsize_key"
android:defaultValue="12"


<検索結果の設定>



[新規作成モード]:
 検索結果をリスト表示する際、
   On:既存の検索結果を消去して新規に表示する
   Off:既存の検索結果を残して追加して表示する
を指定します。チェックボックスでOn/Offします


android:key="result_clear_key"
android:defaultValue="true"



[背景色]:
検索結果画面の表示について
①背景色
を設定します。それぞれ選択リストから選択します


android:key="result_bgcolor_key"
android:defaultValue="800000"



[検索結果(1行目)の表示設定]:
検索結果のリストの1行目について
①文字色
②フォントサイズ
を設定します。それぞれ選択リストから選択します


android:key="result_color_key"
android:defaultValue="000000"
android:key="result_fontsize_key"
android:defaultValue="24"



[検索結果(2行目)の表示設定]:
検索結果のリストの2行目について
①文字色
②フォントサイズ
を設定します。それぞれ選択リストから選択します


android:key="resultattribute_color_key"
android:defaultValue="800000"
android:key="resultattribute_fontsize_key"
android:defaultValue="12"


<結果詳細の設定>



[強調表現]:
 検索結果に含まれるキーワードの強調表現
しますがその際の方法を設定します
   強調しない:
   色づけ:
   太字:
   斜体:
   文字を大きくする:
選択リストから選択します



android:key="content_decorate_key"
android:defaultValue="1"



[結果詳細の表示設定]:
検索結果詳細の
①文字色
②フォントの大きさ
③背景色
を設定します。それぞれ選択リストから選択します


android:key="content_color_key"
android:defaultValue="ffffff"
android:key="content_fontsize_key"
android:defaultValue="12"
android:key="content_bgcolor_key"
android:defaultValue="000080"


<共通の設定>



[日時形式]:
タイムスタンプの表示形式を選択します


android:key="common_dateformat_key"
android:defaultValue="yyyy/MM/dd HH:mm:ss"


★注意 フォントサイズは8,10,12,14,16,18,20,24,36,48,64,96,192,384から
選択できます
★注意 文字色や背景色は基本16色から選択できるようにしています。

   ■●white◆▲
   ■●yellow◆▲
   ■●olive◆▲
   ■●red◆▲
   ■●maroon◆▲
   ■●aqua◆▲
   ■●blue◆▲
   ■●navy◆▲
   ■●lime◆▲
   ■●teal◆▲
   ■●green◆▲
   ■●fuchsia◆▲
   ■●purple◆▲
   ■●silver◆▲
   ■●gray◆▲
   ■●black◆▲

c2010 KrasavKana

<制限と注意事項[Constraints and cautions]>

★注意 限定公開URLが他人に知られると
カレンダの内容が他人に知られる可能性があります。そのような疑いのある場合には、必ずPCから限定公開URLのリセット処理を行ってください。限定公開URLを元URLから推測不可能なものに変えてくれます

 ★注意 日本語(英語)対応。他言語にも対応できると思いますが、そのためには、ケータイ端末自体の言語設定の変更が必要です。
他言語においても特殊な区切り文字(日本語の場合の全角スペース(空白)のようなもの)が
存在するのかわかりませんが、恐らく半角スペースで事足りるのではないかと思います。本アプリにおいても日本語の全角スペースを区切り文字としておりません。
ただ、全角スペースを単語としても仕方ないので、空行(半角スペースやTABなど見えない文字と改行文字で構成された行)の処理時にいちおう全角スペースも半角スペースとみなしてスキップさせています。不都合あれば連絡ください

 ★注意 ケータイ端末によって違うのかも知れませんが、USB接続で外部記憶へのアクセスを可能にしていると、sdcard読み込みができません。一旦USB接続を切ってから試してください(Xperiaでの体験です)


 ★注意 本アプリの利用により生じたいかなる損害についても、アプリ作成者およびアプリ提供者は一切責任を負いません

<OS版数、動作確認端末など>


対象端末 Android1.6以上
テストADS Android1.6 Level4 with sdcard
実機動作確認端末 Xperia SO01B (OS 2.1)


c2010 KrasavKana

0 件のコメント:

コメントを投稿