2019年02月12日

2019-02-12 BonsFM(Android版)を公開しました

2019-02-12 BonsFM(Android版)を公開しました

Windows 版と同じ操作を目的に、Android 8.0 に対応した「BonsFM」を公開しました。

Android 8.0 に対応した「BonsFM」でも、LINE に画像をアップロードする事は可能ですが、アップロードした画像は LINE の画面では「ファイル名」で表示されてしまい、画面で画像見る事ができません。画像を見る場合は画像のファイル名をクリックして「ビューワを起動」して見る必要があります。また、動画はアップロードも出来ません。

LINE の画面で画像を表示したい場合は、Androd 6.0に対応した「BonsFM」が必要ですが、こちらは有料版となります。こちらであれば、画像も動画もアップロードが可能で、画面で画像を見る事ができます。

ただ Android 6.0 の APK はプレイストアでは公開できないので、メールで APK を送るようになります。また、Android 6.0 の対応版を使用するには、事前に「BonsFMpro」の有料版のインストールが必要になります。

プレイストアで以下で検索して下さい。
BonsFM

Screenshot_20181122-090956.jpg
メイン

Screenshot_20181122-091222.jpg
内部SD一覧

Screenshot_20181122-091244.jpg
外部SD一覧

Screenshot_20181122-091311.jpg
お気に入り設定

Screenshot_20181122-091322.jpg
ソート設定

Screenshot_20181122-091345.jpg
単語帳表示(CSV表示)

Screenshot_20181122-091406.jpg
単語帳表示

Screenshot_20181122-091444.jpg
グリッド表示

Screenshot_20181122-092345.jpg
ミニエディタ

Screenshot_20181122-092451.jpg
圧縮ファイル一覧

Screenshot_20181122-092606.jpg
英会話

Screenshot_20181122-092734.jpg
CSV表示

Screenshot_20181122-095405.jpg
CSVセル表示、編集


posted by bonworld at 15:47| Comment(0) | TrackBack(0) | BonsFM(Android)

2018年12月19日

2018-12-19 Android の byte型の比較

2018-12-19 Android の byte型の比較

Android のファイラーを開発していますが、byte型の扱いを間違えていて、思うように動作しませんでした。
byte型は -128 から +127 の範囲ですが、ファイルの内容を読み込んで文字コードを比較する箇所で、byte型を使用して比較していました。

ms932 のカタカナの文字コードは 2バイトで、Ox83 0x40 から 0x83 0x96 までの範囲になります。
byte型での比較で、最初は単純に比較していましたが、 0x83 0x81 が条件と一致しない結果となりした。
見た目では良さそうですが、0x7F を超えると数値がマイナスになるので、条件が一致しなくなります。
0x40 は +64、0x96 は +150 ではなく -96、0x81 は -127 になります。
従って +64 <= -127 <= -96 は成り立ちません。
最終的に 0x7F を境にして、判定を行う事で解決しました。
これなら -128 <= -127 <=-96 となり成り立ちます。


// ファイル設定
FileInputStream fin = new FileInputStream(filename);
// 配列サイズはファイルサイズに余裕を持たせる
byte buffer[] = new byte[(int) (ifile_size+1)];
// 一回で読み込み
fin.read(buffer);
// 終了
fin.close();

// ms932 カタカナ
if ( ( (buffer[i+0] == (byte)0x83) && (buffer[i+1] >= (byte)0x40) ) &&
( (buffer[i+0] == (byte)0x83) && (buffer[i+1] <= (byte)0x7F) )
){
bfind1 = true;
}
// ms932 カタカナ
if ( ( (buffer[i+0] == (byte)0x83) && (buffer[i+1] >= (byte)0x80) ) &&
( (buffer[i+0] == (byte)0x83) && (buffer[i+1] <= (byte)0x96) )
){
bfind1 = true;
}
posted by bonworld at 18:53| Comment(0) | TrackBack(0) | BonsFM(Android)