ダウンロード:ユーチューブをバックグラウンドで再生できるからとの理由で規約違反になりましたので非公開になりました
・最近の機種でズームができなくなっていたので、できるようにしました。しかし、ズームボタンを消す方法が分かりませんでしたので、表示されたままです。
・アルカディア様のアドレスが間違っていました。
・サブタイトルのリストを逆順に並べるボタンを付けました。何百件もサブタイトルがある小説の最新話を読むときに便利です。
・グーグルプレイストアには置けなくなったのですが、こっそりここにAPKファイルを置いてもいいかもしれないと思いました。
・最初から特定のサイトを登録しないようにしたのですが、再インストールするたびにサイトを登録しなおすのが面倒になり、やはり最初からサイトを登録しておくようにしました。
・ハーメルン様の書式が多少変化して読み込めなくなっていたので対応しました。
・ネット小説巡回ブラウザ2に名前を変えました。
これは、前のネット小説巡回ブラウザを使っている方の中に上書きされたら困るとおっしゃる方がいるかもしれないと思いこうしました。初めて使われる方はどうやって使えばいいのか分からないかもしれません。少なくとも今までは、特定の小説サイトさまをボタンに登録していましたので、どのサイトさまが「連結」できるのかわかったと思います。しかし、今回の変更でボタンはあるけど何を登録すればいいのかわからないという状況になっていると思います。ですが、ここではあえてそれは言わず、お気に入りのサイトさまを登録してくださいと言わせていただきます。抜出モードもありますので、例え連結できなくても使いようのあるアプリだと思います。
・初めから特定のサイトをボタンに登録するのをやめました。
これは、Google Play デベロッパー プログラム
ポリシーに「自分で所有または管理していないウェブサイトのウェブ表示を提供する」ような機能を主要な機能とするアプリを送信してはなりませんとあったのでこのようにしました。
この変更に伴い、ボタンをクリックしたときにそのサイト用のキーを設定して処理していたのを変更し、「連結」をタップしたときにURLを参照してどこのサイトさまなのか判断し、キーを設定するようにしました。ですから、今までは連結できるはずのサイトさまを検索エンジンで表示して連結しようとしても、出来なかったことがあったと思いますが、それは、サイトさまのボタンをタップしてキーを登録していなかったせいでそうなっていました。例えば、よく読む小説をブックマークに登録して連結ボタンをタップしてもサブタイトルが取得できなかったと思いますが、それはキーが設定されていなかったからです。今回の変更によりその点は改善されました。
・ワンタッチでお気に入りのサイトさまを表示できないと不便なので、ボタンにブックマークを登録できるようにしました。
登録は、メニューの中にある「設定」をタップし、「ブックマークボタン登録」を選んでもらえばできます。ボタン名がボタンの大きさになりますので、長い名前にすると表示が崩れます。(スマホの画面では既に崩れています)
・ホームページ登録メニューを付けました。
登録は、メニューの中にある「設定」をタップし、「ホームページ登録」を選んでもらえばできます。デフォルトでは「google」さまをホームページにさせていただいております。
・抜出モードの終了メニューを付けました。
このアプリを終了したい場合、抜出モードを表示していたときに、戻るボタンで元の画面に戻ってからメニューの「終了」をタップしていたのですが、抜出モード時にメニューを使えるようにしていなかったので、操作が分からない方もいたかもしれません。ですから、抜出モード時にメニューをタップすると、「抜出モード終了」ができるようにしました。直接終了できればよかったのかもしれませんが、親画面を子画面から終了する方法がわからなかったので、このようにしました。
・URL消去ボタンを付けました。
URLをコピー&ペーストで貼り付けて「更新」をタップして表示したいときに、前のURLが残っていて貼り付けた後に消すということがよくありましたので、「消去」ボタンを付けました。
理由はGoogle Play デベロッパー プログラム
ポリシー に下記のような規制があり、このアプリにボタンをタップすれば、許可をとっていないサイトを開く機能があるからです。ユーザーがブックマークに登録するのはいいのですが、初めから特定のサイトを登録しておくのは、もしかしたらポリシー違反になるかなと思いました。
・以下のような機能を主要な機能とするアプリを送信してはなりません
アフィリエイトのトラフィックをウェブサイトに誘導する
自分で所有または管理していないウェブサイトのウェブ表示を提供する(ただし、そのウェブサイトの所有者または管理者から許可を得ている場合を除く)
・ブックマーク表示のときURLの表示は必要ないと思い、タイトルだけの表示にしました。
・ソース表示画面と抜出モードの画面で、タイトルバーを表示していましたが、画面を広く使うために取り止めました。
・連続抜出のダイヤログにSKIPを追加しました。
・抜出設定を保存できるようにしました。ブックマークと似ていますが、同じ設定を何度も使うこともあると思いこのメニューを作りました。
・ハーメルンのスマホ版の取り込みがうまくいっていなかったので修正しました。
・インターネットアーカイブで文字化けするページを、ある程度表示する機能を付けました。
この文字化けの原因は、古いホームページでキャラセット「x−sjis」を使っていたものが、インターネットアーカイブの保存のしかたが悪かったのか、どのエンコードを使っても読めなくなったようです。
2チャンネルのフォーラムによると、文字化けしたhtmlを「windows-1252」でいったん保存して、「shift−jis」で読み込めばある程度読めるようになるとのことでした。
これで、ある程度読めるのですが、もう少しなんとかならないものかと思い、2〜3日取り組んでいたのですが、今のところ完全に元通りにはなっていません。
現在分かっている原因を述べますと、そもそもインターネットアーカイブが「x−sjis」の文字コードを「windows-1252」で保存してしまっているのが文字化けの原因です。私は素人なので、確証はありませんが。
それで、「windows-1252」のキャラセットを見ると、文字コードの「81」「8D」「8F」「90」「9D」が未定義になっています。つまり、使ってはダメなんです。
しかし、「x−sjis」(shift−jisと同じ)では、これらのコードが使われています。例えば、「正」は「90B3」です。「90」が入っているので、文字化けします。これは、前だけでなく後ろに入っていても文字化けします。例えば、「叶」は「8A90」ですので、文字化けします。
それで、どうなるのかといえば、詳しい経過はまだ調べがついていませんが、「windows-1252」でいったん保存して、「shift−jis」で読み込んだものを調べると、「81」「8D」「8F」「90」「9D」がすべて「1C]になっているようです。
先の例でいきますと、「正」は「1CB3」になるはずですが、2バイト目が「80」以降の場合は更に変化して、最終的には、「1C FF73」になっていました。
それでは、「1C FF73」が出てきたら、「正」に変換すればいいと思われるかもしれませんが、そうはなりません。なぜなら、「81B3」(未定義)、「8DB3」(叉)、「8FB3」(承)も同じく、「1C FF73」に変換されているからです。ちなみに、「9D」で始まる文字コードは「x−sjis」にはありません。ですから、「1C FF73」は、「正叉承」のどれかになります。
そして、次に1バイト目、2バイト目どちらとも「81」「8D」「8F」「90」「9D」で構成されている文字があります。例えば、「8D81」(香)、「8D90」(告)など、20文字あるのですが、これらの文字は全て「1C1C」になります。つまり、「1C1C」が出てきたら、20文字の内のどれかだという感じです。
更に特定が難しいのが、2バイト目が「81」「8D」「8F」「90」「9D」のどれかの文字です。これは、全部で100文字ぐらいあるのですが、これらは全て、「FFFD 1C」になっています。機械的に特定するのはかなり骨が折れると思います。
もっとデータを遡って初めの文字化けした状態のhtmlを解析すれば、特定できるのかもしれませんが、まだそこまで至っておりません。
・メニューから「更新」をなくし、「設定」に変更しました。「設定」は、「縦V&T」をタップしたときに、縦V&Tか縦V&TforDTのどちらかを起動するか選択するものです。
・「抜出モード」画面で、「自動抜出」メニューを追加しました。このメニューはサーバーに負担がかかるので、アクセス制限に引っかかることがあると思います。例えば、小説家になろう様では10話以上連続でアクセスしたらスピードが遅くなるとかあるようです。なお、「自動抜出」で50万文字以上のファイルを保存するために、SDカードに書き込む権限を頂くことになりました。
・ブックマーク機能を追加しました。ブックマークの追加、削除、リストからの選択ができます。「その他」ボタンをタップしたら出てきます。
注意)登録されているサイト(なろう、暁など)様のある小説をブックマークしてその後、ブックマーク表示メニューから選択し表示した場合、連結ボタンをタップしても、サブタイトルが表示されないことがあります。これは、各サイトのボタンをタップしたときに、サイトごとの設定を判断するキーを設定してますのでこうなります。つまり、例えば、なろう様のある小説をブックマークして連結をタップしてサブタイトルを表示したい場合は、ブックマークを選択する前に「なろう」のボタンをタップして下さい。
・ソース表示機能を強化して、文字列の操作が可能になり、その後、縦Viewer&Talkerで表示できるようにしました。
なぜ、ソースコードを文字列操作しようと思ったのかを言えば、アンドロイド2.2では、Webviewの画面をタッチして、文章の取得が出来ないからです。例えば、ネット上にあるニュースなどの文章を縦Viewer&Talkerで読もうとすると、このブラウザでは範囲指定やコピーが出来ないので、出来ませんでした。
ですから、Edittextを使っているソース表示の方を操作して文章を取得できるようにしました。ちなみに、Edittextの画面をタップして、位置を指定した後、縦V&Tのボタンをタップすれば、その位置から表示されます。ただし、アンドロイド4.1では出来たのですが、2.2では日本語入力の種類にもよるようですが、少し難しいです。
・「抜出モード」を追加しました。(下の画像)
このモードに移動する方法は、点が縦に三つ並んだメニューボタンを押すと、「終了」ボタンの横に「抜出モード」というボタンがありますので、これをタップして下さい。
「抜出モード」は、画面を新しく1つ追加して作りました。画面構成は、上から、URL表示欄と更新ボタン、次の欄に「+」「−」「抜出設定」「抜出」「連続抜出」「cls」「縦V&T」「ソース」「画面切替」のボタンが並んでおり、その下に、Webview、最後にEdittextを使った表示欄があります。(Edittextは、初期状態では隠れていますので、必要に応じて「画面切替」で表示して下さい)。
「抜出設定」には、「抜出範囲の指定」と「URLの後ろから〇文字除外する」という2つの項目があります。
抜出モードを作った理由は、ネット小説巡回ブラウザが登録されているサイトしか文章を連結できないからです。それ以外の個人様のサイトでもおもしろい小説はたくさんあります。そんな小説を繋げて読むには、1話1話コピー&ペーストしなければなりませんでした。しかし、スマホの操作はキーボードやマウスがあるパソコンほどうまくいかず、せっかく繋げた話が消えてしまうこともよくあります。そこで、このモードの出番です。
上の画像のURLを見ると、末尾がn4029bs/1/になっているのが見えます。小説家になろう様では、この最後の/1/が1話目を表しています。そして、/2/が2話目になります。だいたいの小説サイトでも、このように連番になっていると思います。ですから、URLの後ろから数えて、一番最初に出てきた数字から、数字以外の文字になるまで順番に取り込んで、その番号に1をプラスすれば、次の話のURLになるはずです。
このURLに1プラスするという機能が、「+」ボタンです。そして、行き過ぎることもありますので、「−」ボタンでバックもできるようにしました。
次に1つ飛ばして「抜出」ボタンについて説明します。「抜出」は現在表示しているホームページのソースコードを抜き出して、それを下のEdittextに表示するものです。ただ、それだけでは、タグも表示されてしまいますので、文字列変換を同時に行っています。
行っている置き換えは、replaceAll(”<br>”,
”\n”)とreplaceAll(” ”, ””)とreplaceAll(”\t”,
””)、そして、<>で挟まれた文字は全て取り除いてます。これでタグは消えます。
しかし、これだけでは全てのいらない文字を取り除くことができません。そこで必要になるのが、「抜出設定」の中にある、「抜出範囲の指定」です。
抜き出したい文章というのは、ソースコード上だいたいまとまっているものです。ですから、文章の開始位置のすぐ手前と文章終了のすぐ後に目印があれば、その間の部分を抜き出して文字列変換した方が要らない文字が紛れ込まなくてすみます。
その目印を指定するのが、抜出範囲の指定です。範囲指定には2つの要素が必要で、それは、「抜き出したい文章の直前にある文字」と「抜き出したい文章の直後にある文字」です。ただ気をつけなければならないのは、2つの文字(文字列)の選び方です。
まず、直前の文字ですが、その文字と同じものが直前よりもっと前に出てきていたらダメです。文章の頭から検索して、最初にヒットした場所が、指定範囲の開始位置になります。
次に、直後の文字ですが、文章が終わるより前に同じものがあったら、文章がそこで切れてしまいます。例えば、</div>を直後の文字に指定したとして、文章の途中で</div>があったら、そこで切れてしまいます。小説家になろう様であったのですが、ヘッダーの後に、</div>があってそこで切れました。それで、</div
class="novel_bn">を直後の文字に指定したらうまくいきました。
抜出範囲の指定は連続抜出にも使われていますので、更に注意が必要です。どういう事かといえば、「直前の文字」、「直後の文字」の指定は、連続で抜き出す全ての話で共通に存在しており、かつ先程の条件を満たしていないといけないからです。まあ、大抵の場合は満たしているはずなんですけど。
もし、範囲を指定しなかったら、ソースの最初から最後までが範囲になります。片方だけ指定してもいいです。
「抜出設定」にあるもう1つの設定を説明します。それは、「URLの後ろから〇文字除外する」です。これは、上の画像にあるようにURLが/1/で1がページ番号になっていたらいいのですが、ページ番号でない数字が最後の方にあった場合の対処方法です。
例えば、n4029bs/1/n=3でURLが終わっていて、n=3の3がまったくページとは関係なかった場合、ページ表示がエラーになってしまいます。これを、n4029bs/2/n=3にすれば次のページが表示される場合、3を無視するには、後ろから1文字除外すればいいわけです。これをするためのメニューです。
「連続抜出」をタップすると終了ページ番号を聞かれます。この番号は、現在表示しているページから1ページずつ増加していって、終了するページ番号です。終了する前に50万文字を超えるとクリップボードに入りきらなくなりますので縦Viewer&Talkerで表示できなくなります。
「連続抜出」は全自動にはしておりません。これはサーバーに迷惑がかかるかなと思ったからです。1話ずつポチッて下さい。途中でキャンセルしても、それまでの分がEdittextに表示されます。50万文字を超えそうになったらキャンセルボタンをタップして下さい。
「cls」はEdittext内の文章を消します。
「縦V&T」は、縦Viewer&Talkerを起動します。Edittext内の文章を縦書きで表示します。
「ソース」は、ソースコードを表示します。抜出範囲の指定をするときに使ってください。
「画面切替」は、1)Webviewのみ 2)WebviewとEdittext半分ずつ 3)Edittextのみの3画面がタップするたびに切り替わります。
1)E☆エブリスタ様の小説を連続連結して読めるようにしました。
2)アドレスを表示しているEdittextの行が複数行になると画面が見えなくなっていたので、1行表示にしました。
3)メニューボタン(終了など)を押してもクリック音が出てなかったので、プログラムを別のやり方に変更しました。
・このアプリは「縦Viewer&Talker」がインストールされていることが前提です。
・「縦Viewer&Talker」は「N2 TTS」や「ドキュメントトーカ(製品版)」などの日本語TTSが必須ですので、それもインストールされていることが前提です。
・「縦Viewer&Talker」と日本語TTSがインストールされていることが前提だと書きましたが、なくても動きます。この場合、連結した文章はクリップボードに入っていますので、テキストビューワなどに貼り付けて利用できます。
・このアプリはブラウザ機能を利用していますが、純粋なブラウザアプリに比べるとかなり機能が低いです。例えば、お気に入り登録ができません。
・このアプリは「小説家になろう」様、「ハーメルン」様、「暁」様、「Arcadia」様、「Over
The Rainbow」様に投稿されている小説を「縦Viewer&Talker」で読みやすくする為に作りました。
・このアプリは「小説家になろう」を商標登録されている「株式会社ヒナプロジェクト」様が提供するものではありません。その他の小説投稿サイト様が提供するものでもありません。
・このアプリには小説の各話をつなげて一つのファイルにする機能がありますが、全自動ではありません。一話ずつボタンをタップする必要があります。
・つなげることのできる話数には限界があります。トータル文字数で言えば50万字ぐらいです。限界を超えるとせっかくつなげた話が消えてしまいますので、早めに切り上げてください。
・各小説投稿サイト様には「PC版」「スマホ版」「携帯版」などの種類があり、端末に応じて自動で切り替わるところもありますが、すべてには対応していません。基本的に「PC版」対応ですが、「スマホ版」も対応しているところもあります。しかし、うまく読めない小説も中にはあります。これは小説によってHTMLファイルの作りが違うからです。
一番の目的は、「小説家になろう」様で掲載されている小説の各話をつなげることです。今までは、パソコンを使って縦書きのPDFファイルを範囲指定してテキストファイルにしていたのですが、スマホやタブレットだとPDFファイルをテキストファイルにできませんでした。
「ハーメルン」様、「暁」様、「Arcadia」様は、全話一括表示ができますので、それをコピーすればスマホやタブレットでも見られました。ただ、50万字を超えるような大作はコピーできませんでしたので、範囲指定をしてコピーすることになるのですが、タッチパネルの範囲指定は難しく、結局は一話ずつコピーしてワープロソフトに貼り付けてつなげていました。
このような作業を簡単にするためにこのアプリを開発しました。
アプリを起動すると「小説家になろう」様のTOPページが表示されます。(今のところ変更はできません)(下の写真)
一番上の行が現在のURLです。ここにURLを貼り付けて更新ボタンをタップすると画面がかわります。
その下の行の「Yaho」の次から4つが各小説投稿サイト様になります。画面が狭いので、失礼ながらサイト名を短縮させていただいております。
「Yaho」・・・ヤフー様。小説投稿サイトではありませんが、小説を検索するのに用います。
「ハーメ」・・ハーメルン様
「暁」・・・・暁様
「なろう」・・小説家になろう様
「Arca」・・・Arcadia様
「その他」・・Arcadia様のSS捜索掲示板(小説を検索するのに用います)(下の写真)
Over The Rainbow様
「連結」・・・各話を連結したいときにタップするボタンです。
「縦V&T」・・「縦Viewer&Talker」が起動します。クリップボードに文章があれば表示されますので、長押しで文章をコピーした後にタップすると縦書きで表示されます。Uターンボタンで戻ります。
「ソース」・・・現ページのHTMLが表示されます。Uターンボタンで戻ります。(下の写真)
メニューボタンをタップすると、ブラウザを操作するメニューが表示されます。(下の写真)
「戻る」「進む」「更新」「終了」のメニューがあります。
ブラウザは、Uターンボタンでは終了しませんので、「終了」ボタンで終了させてください。
「連結」ボタンはどこで押してもいいというわけではなく、サブタイトルが並んでいる画面でタップして下さい。(勝手ながら、小説家になろうで現在総合2位の蘇我捨恥氏著「異世界迷宮で奴隷ハーレムを」を参考に使わせていただきます)(下の写真では分かりませんが、画面をスクロールするとサブタイトルが並んでいます)
「連結」をタップすると下の写真のようにリストが表示されます。(サブタイトルが表示されなかった場合は、失敗ですので連結できません)
連結し始めたいサブタイトルをタップして下さい。今回は「1.プロローグ」をタップしました。
すると下の写真のようなダイヤログが表示されます。表示されている内容は、「1/180」が180話中の1話目を意味しており、「プロローグ」がサブタイトルで、「現在の文字数=0文字」が現在連結されている文字数のトータルです。これが50万字を超えると連結した文章が消えますので注意してください。(機種によってはもっと少ない字数かもしれません)
「YES」・・・連結
「SKIP」・・・読み飛ばす。間話を飛ばしたいときなどに使ってください。
「NO」・・・・連結終了。「縦Viewer&Talker」が起動し、連結した文章が表示されます。
最後まで「YES」をタップすると、「縦Viewer&Talker」が起動し、連結した文章が表示されます。
「YES」をタップすると画面が切り替わります。(下の写真)
「2/180」になって2話目を連結するか確認してきます。「現在の文字数」が、7,071文字になっており、これは1話目の文字数です。
上の写真で「NO」をタップすると、連結を終了し「縦Viewer&Talker」が起動します。(下の写真)
今回は、2話目で「NO」をタップしたので、1話分の話だけ表示されます。
ここからの操作は「縦Viewer&Talker」に移行します。(Uターンボタンで「ネット小説巡回ブラウザ」に戻ります)
※サブタイトルの取得や小説本文の取得にはHTMLから文字列を抜き出す方法をとっておりますので、うまく読み込めない小説もあると思います。申し訳ございませんが、その点はご了承くださいませ。