タイトル
執筆:2024.05.20
編集:2024.05.20
編集:2024.05.20
lineageos fire HD 8 2017
OSが古すぎてアプリがインストールできない、セキュリティパッチで激ノロになっているので更新したい。
差し替え保留中
- 後継機種を持っている
- サポート期限切れたLineageOSいれても意味がない
- 差し替えるとさらに遅くなる可能性が高い
- abema見れるのでとりあえず必要性がない
設定 : 端末オプション : 端末モデル
Fire HD 8 (第7世代)
タブレットのバージョンとOS
https://developer.amazon.com/ja/docs/fire-tablets/ft-identifying-tablet-devices.html
Fireタブレット ビルドモデル AndroidのバージョンとAPIレベル 最新のFire OSバージョン
Fire HD 8(2017、第7世代) KFDOWI Android 5.1、APIレベル22 Fire OS 5
LineageOS と Android version 対照表
LineageOS | Android OS | 備考 |
21 | 14 | |
20 | 13 | |
17.1 | 10 | サポート切れ |
14.1 | 7.1 | サポート切れ |
FireOS 5.3.7.3 / Android 5.1.1
mt8163
system/build.prop
ro.product.name douglas
素のアンドロイドとlineageos 何が違うんだろう?
自前buildなら素のアンドロイド選んだほうがよくない?
カテゴリー: Lineage
2024.05.20
タイトル
LineageOS 21 A9 PRO (2020)
LineageOSとAndroidの対照表
lineage-21.0-20240315-nightly-a9pro128_2020-signed.zip
boot.img
執筆:2024.03.18
編集:2024.03.18
編集:2024.03.18
LineageOS 21 A9 PRO (2020)
LineageOSとAndroidの対照表
LineageOS | Android |
21 | 14 |
20 | 13 |
lineage-21.0-20240315-nightly-a9pro128_2020-signed.zip
boot.img
» 続きを読む
カテゴリー: Lineage
2024.03.18
タイトル
Android11は仕様がかわり
画像は 各ストレージ直下の[ DICM と Pictures ]フォルダ内(その子フォルダ)でしか保存できません。
アプリの権限は、[ READ_EXTERNAL_STORAGE , WRITE_EXTERNAL_STORAGE ]が必要です。
またすべてのフォルダで画像を保存できるようにするには、'android.permission.MANAGE_EXTERNAL_STORAGE'権限を取得する必要があります。
マニフェストとコード(権限リクエスト)と両方記述が必要です
ContentResolver.insert
に渡す Uri は、
.getContentUri([定義済み定数|ボリューム名]) から取得します。
定義済みの Uri 変数定数を使うと メインストレージにしか書き込めません。(ここが皆がわからずに SDcradに書き込めないと はまっている箇所です)
使える 外部 volumeは、
"external_primary" , MediaStore.VOLUME_EXTERNAL_PRIMARY
"xxxx-xxxx"; // SDカードの場合は数値に置き換える
です。
MediaStore.VOLUME_EXTERNAL_PRIMARYの値は "external_primary" です。
DelphiなどJAVA以外から操作する場合は、定数は定義されていないので 文字列を使ったほうがいいでしょう。
'xxxx-xxxx'は MediaStore.getExternalVolumeNames(context)で一覧を取得できます。
uri = MediaStore.Images.Media.getContentUri(MediaStore.VOLUME_EXTERNAL_PRIMARY);
uri = MediaStore.Images.Media.getContentUri("external_primary");
uri = MediaStore.Images.Media.getContentUri("xxxx-xxxx");
uri = MediaStore.Files.getContentUri(volume);
のようになります。
SDCardは ファイルパスが
/strage/xxxx-xxxx/
になっています。
xxxx-xxxxは、メディアごとの識別子なので、別のカードやフォーマットすると変わってしまいます
ファイルパスは
メインストレージ: /strage/emulated/[ユーザーID:通常は0]/相対パス(可視領域)
外付けメディア: /strage/xxxx-xxxx/相対パス(可視領域)
ファイル名から取得する場合は、正規表現で ^/strage/([^/]+)/ にファイル名がマッチするか確認すればいいと思います
MediaStore.getExternalVolumeNames(context)のリスト値にないなら、メインストレージとか仮想メディアとか。
仕様が規格外の端末は相手にする必要はないと思います。
マッチしたらそれが ファイルの volumeです。getContentUriに渡す値になります!
ContentResolver.insert関数の結果で得た URIを
ContentResolver.openOutputStream関数に渡してオープンすると パスとファイルが作成されるので
存在しないフォルダの準備はしなくていいです。
フォルダを指定したい場合は、
ContentResolverに渡す値に, "relative_path" の項目で 相対パス(可視領域) を追加します
Pictures/子フォルダ/テスト.jpg に保存したい場合は
"relative_path"の値は "Pictures/子フォルダ" になります
執筆:2023.10.28
編集:2023.10.28
編集:2023.10.28
Android11は仕様がかわり
画像は 各ストレージ直下の[ DICM と Pictures ]フォルダ内(その子フォルダ)でしか保存できません。
アプリの権限は、[ READ_EXTERNAL_STORAGE , WRITE_EXTERNAL_STORAGE ]が必要です。
またすべてのフォルダで画像を保存できるようにするには、'android.permission.MANAGE_EXTERNAL_STORAGE'権限を取得する必要があります。
マニフェストとコード(権限リクエスト)と両方記述が必要です
ContentResolver.insert
に渡す Uri は、
.getContentUri([定義済み定数|ボリューム名]) から取得します。
定義済みの Uri 変数定数を使うと メインストレージにしか書き込めません。(ここが皆がわからずに SDcradに書き込めないと はまっている箇所です)
使える 外部 volumeは、
"external_primary" , MediaStore.VOLUME_EXTERNAL_PRIMARY
"xxxx-xxxx"; // SDカードの場合は数値に置き換える
です。
MediaStore.VOLUME_EXTERNAL_PRIMARYの値は "external_primary" です。
DelphiなどJAVA以外から操作する場合は、定数は定義されていないので 文字列を使ったほうがいいでしょう。
'xxxx-xxxx'は MediaStore.getExternalVolumeNames(context)で一覧を取得できます。
uri = MediaStore.Images.Media.getContentUri(MediaStore.VOLUME_EXTERNAL_PRIMARY);
uri = MediaStore.Images.Media.getContentUri("external_primary");
uri = MediaStore.Images.Media.getContentUri("xxxx-xxxx");
uri = MediaStore.Files.getContentUri(volume);
のようになります。
SDCardは ファイルパスが
/strage/xxxx-xxxx/
になっています。
xxxx-xxxxは、メディアごとの識別子なので、別のカードやフォーマットすると変わってしまいます
ファイルパスは
メインストレージ: /strage/emulated/[ユーザーID:通常は0]/相対パス(可視領域)
外付けメディア: /strage/xxxx-xxxx/相対パス(可視領域)
ファイル名から取得する場合は、正規表現で ^/strage/([^/]+)/ にファイル名がマッチするか確認すればいいと思います
MediaStore.getExternalVolumeNames(context)のリスト値にないなら、メインストレージとか仮想メディアとか。
仕様が規格外の端末は相手にする必要はないと思います。
マッチしたらそれが ファイルの volumeです。getContentUriに渡す値になります!
ContentResolver.insert関数の結果で得た URIを
ContentResolver.openOutputStream関数に渡してオープンすると パスとファイルが作成されるので
存在しないフォルダの準備はしなくていいです。
フォルダを指定したい場合は、
ContentResolverに渡す値に, "relative_path" の項目で 相対パス(可視領域) を追加します
Pictures/子フォルダ/テスト.jpg に保存したい場合は
"relative_path"の値は "Pictures/子フォルダ" になります
カテゴリー: 総合
2023.10.28
お買い得 スマホ MNP 秋のキャンペーン
スマホは、電話番号移動のMNPで乗り換えがお得
キャンペーンしている携帯会社が多いため
新規よりもMNPして割引き価格で購入したほうがお得です
楽天の価格破壊に続き いまでは各社 月額1000円未満のプランが豊富です。
楽天だと3段階の従量制なので、値段があがる心配がありますが
定額プランなら気にせず、ストレスなく利用できます
定額プランのいいところ
・定額制なので安心
・使用する通信料や通話時間に応じて支払いを決めることができる
・高速通信を使い切ったら追加購入できる
MNPで端末とセットで加入するとかなり お得です
料金プラン以外にも
加入の事務手数料、解約金、再発行手数料、データ追加料金などをよくみて検討しましょう
また
スマホには、周波数バンドといって 通信網により利用できる周波数バンドが違うので
au,ドコモ、ソフトバンクのどの通信網になるのか、また、その際の機種をよく確認しましょう。
先にスマホを決める場合
→ スマホが対応している通信網を選択する
通信網を決めている場合
→ スマホがその通信網に対応しているか確認する
おすすめの通信事業者をみてみましょう
つづく(準備中)
編集:2021.11.08
スマホは、電話番号移動のMNPで乗り換えがお得
キャンペーンしている携帯会社が多いため
新規よりもMNPして割引き価格で購入したほうがお得です
楽天の価格破壊に続き いまでは各社 月額1000円未満のプランが豊富です。
楽天だと3段階の従量制なので、値段があがる心配がありますが
定額プランなら気にせず、ストレスなく利用できます
定額プランのいいところ
・定額制なので安心
・使用する通信料や通話時間に応じて支払いを決めることができる
・高速通信を使い切ったら追加購入できる
MNPで端末とセットで加入するとかなり お得です
料金プラン以外にも
加入の事務手数料、解約金、再発行手数料、データ追加料金などをよくみて検討しましょう
また
スマホには、周波数バンドといって 通信網により利用できる周波数バンドが違うので
au,ドコモ、ソフトバンクのどの通信網になるのか、また、その際の機種をよく確認しましょう。
先にスマホを決める場合
→ スマホが対応している通信網を選択する
通信網を決めている場合
→ スマホがその通信網に対応しているか確認する
おすすめの通信事業者をみてみましょう
つづく(準備中)
カテゴリー: 総合
2021.11.08
Le 1 Pro アップグレード Android10 (Lineage OS 17)
Le 1 Proのアップグレード
Android 5ベースだと、アプリが起動時にエラーで起動できないものが増えてきたため そろそろOSをアップグレードしたほうがよさそう。
不具合 Android 5ベース
公式サイト?のAndroid 6ベースのファイルは、2015-04-09で
本体のAndroid5.0.2 (2016/03/07)より古いのでアップグレードする価値がないが、セキュリティ的にどうなんだろう。
選択肢としては、現状維持(Android5)か自前buildしてクリーンアップグレード(Android10)の2択。
他の端末用のカスタムROMを作ったことがありますが、
今回はbuildなので200GB~1TBくらい容量いるし、build時間も何十時間(何日)かかるか不明。
指紋認証ないと持ち運びに不便だし
1万円でmicrosdカードスロット付きの指紋認証付きの
同じくらいのスペックのAndorid9端末が売っているので
仕様調査して改造に費やす時間がないため保留。
覚書
アップグレードで最低限維持しておきたい機能
今後の課題
執筆:2020.04.13
編集:2020.04.13
編集:2020.04.13
Le 1 Proのアップグレード
Android 5ベースだと、アプリが起動時にエラーで起動できないものが増えてきたため そろそろOSをアップグレードしたほうがよさそう。
不具合 Android 5ベース
- ドコモ系のアプリは全滅。
Android5で提供されていないStringリソースへのアクセス違反で起動時に強制終了する - PayPayも一部の機能をタップすると落ちる。
公式サイト?のAndroid 6ベースのファイルは、2015-04-09で
本体のAndroid5.0.2 (2016/03/07)より古いのでアップグレードする価値がないが、セキュリティ的にどうなんだろう。
選択肢としては、現状維持(Android5)か自前buildしてクリーンアップグレード(Android10)の2択。
他の端末用のカスタムROMを作ったことがありますが、
今回はbuildなので200GB~1TBくらい容量いるし、build時間も何十時間(何日)かかるか不明。
指紋認証ないと持ち運びに不便だし
1万円でmicrosdカードスロット付きの指紋認証付きの
同じくらいのスペックのAndorid9端末が売っているので
仕様調査して改造に費やす時間がないため保留。
覚書
- 未取得
- Lineage OSのソースコード(未取得)。作業開始時に最新版を使う
- Le1Proの初期ファーム(US):Android5.0.2 (2016/03/07)。
- 取得済み
- カスタムブートローダー(TWRP)と使用方法
- Le1Pro用のAndroidのbuild用device fileは インターネットから取得済み
- Lineage OSのBuild手順
- Le1ProのAndroid6ファーム(CN)
アップグレードで最低限維持しておきたい機能
- アプリが起動できること
- 自動 電源ON/OFF
- 正常なタッチパネル動作
- カメラ機能
- 位置情報 GPS
今後の課題
- Lineage OSは不安定?
Lineage OS より 素のAndroidソースからのbuildができるなら、そのほうがセキュリティ的に安心
カテゴリー: Lineage
2020.04.13
スマホのセキュリティアプリはなにがいい? おすすめは?
執筆:2019.02.07
編集:2019.02.07
編集:2019.02.07
安全ですって表示されても
きちんと検査してくれるの?
って思いませんか
そこで
まず、以前国内で購入したタブレット(ADP-921)で発見した
システムアプリとしてプレインストールされていた
勝手に中華アプリをインストールしまくる
マルウェアアプリ(rstech_teni.apk, カテゴリ:トロイの木馬; Android/HiddenApp.G 亜種)を検査材料にしたいと思います。
たいていのセキュリティソフトはシステムアプリを検査してくれないので
対象をSDカードに移した状態で、コピー、とスキャンのチェックしたいと思います
» 続きを読む
カテゴリー: アプリ
2019.02.07
Leeco Le 1 pro upgrade to LineageOS 18.1 (Android11.0) メモ
執筆:2019.02.05
編集:2021.11.08
編集:2021.11.08
Leeco Le 1 pro のROM書き換えのためのメモ
一般的な注意点として、
使い込んでいた場合はRAMの書き換え寿命の問題もありますので
適当なところで使用をやめ、他のデバイスに乗り換えたほうがいいと思います
Leecoのソースコード:
※ 現在ダウンロードできないみたい
LineageOSのサイト
バイナリROMだけでなく、ソースコードも配布されている
必要なファイル
- ブートローダー(TWRPなど)
ブートローダーをTWRPに置き換える。- インストールにより起こる問題点
セキュリティが下がり、少しの知識で誰でもデータにアクセスできるようになるので注意。
- インストールにより起こる問題点
- ROM
ブートローダーの置き換えに失敗した場合は、フラッシュツールで正常なROMに書き換えれば復活する。
QSPTフラッシュツール:このデバイスで利用できる専用のROM書き込みツール
» 続きを読む
カテゴリー: Lineage
2019.02.05
TWRPの操作に認証をかけるには?
おそらくこれを読んでいる方は、
紛失時に第三者によりデータ取得させないために
TWRPに関する操作に認証をかけたいのではないでしょうか
こたえは、公式サイトのFAQ(https://twrp.me/faq/securetwrp.html)に書いてあります。
従いまして、TWRPプロジェクトの方針として「TWRPの操作に認証」機能を加える気はないようです。
身近な事例でわかりやすく表現すると
セキュリティ意識が低いとか
実際日常生活でTWRPをいれた端末をつかっていない人たちで構成されているのかもしれませんね
戸締り用心,火の用心ってことば教えてあげて。
検索するとわかりますが、海外のフォーラムなどで
自転車のロックが1個だけなら盗まれるが2,3個あれば盗まれる確率が減るのと同じで
ブートローダーにはオプションで操作認証機能は必要だと思います。
別のブートローダーを選択するしかないですね
寄付金目当てで運営してるのでしょうから、フォークして認証を組み込んだものを広めたら、死活問題なのであわてて、機能追加してくると思いますけどね。
まとめ
執筆:2019.02.04
編集:2019.02.04
編集:2019.02.04
おそらくこれを読んでいる方は、
紛失時に第三者によりデータ取得させないために
TWRPに関する操作に認証をかけたいのではないでしょうか
こたえは、公式サイトのFAQ(https://twrp.me/faq/securetwrp.html)に書いてあります。
要約すると
ほかの抜け道で、データを取得できるから、
俺たちのTWRPに認証なんかいれないぜ!
いれてしまったら俺たちが使いにくくなるじゃないか!
俺たちのTWRPに認証なんかいれないぜ!
いれてしまったら俺たちが使いにくくなるじゃないか!
データ漏えいが気になるなら、Androidの設定で暗号化しやがれ!
だそうです。従いまして、TWRPプロジェクトの方針として「TWRPの操作に認証」機能を加える気はないようです。
身近な事例でわかりやすく表現すると
窓が開いているから、玄関の戸締りなんかしないぜ!
文句あるなら家財を全部金庫にしまえ(暗号化しろ)
と言っているような感じですね。文句あるなら家財を全部金庫にしまえ(暗号化しろ)
セキュリティ意識が低いとか
実際日常生活でTWRPをいれた端末をつかっていない人たちで構成されているのかもしれませんね
戸締り用心,火の用心ってことば教えてあげて。
検索するとわかりますが、海外のフォーラムなどで
えっ信じられないセキュリティ意識低すぎ。
必要でしょ!
なんでいれないの
などなどいっぱい苦情が書かれています。
自転車のロックが1個だけなら盗まれるが2,3個あれば盗まれる確率が減るのと同じで
ブートローダーにはオプションで操作認証機能は必要だと思います。
別のブートローダーを選択するしかないですね
寄付金目当てで運営してるのでしょうから、フォークして認証を組み込んだものを広めたら、死活問題なのであわてて、機能追加してくると思いますけどね。
まとめ
- 「TWRPの操作に認証」機能はない
- TWRPをインストールした端末の紛失対策
-
- Androidの設定:暗号化でデータを暗号化する
(Android6以降の端末は工場出荷時に暗号化「する」になっているそうです)
「設定」「セキュリティとプライバシー」「暗号化」
副作用として、すべての操作で暗号・復号が発生するため体感速度レベルで劇的に遅くなります。
- Androidの設定:暗号化でデータを暗号化する
カテゴリー: 総合
2019.02.04
スマホ対応バンドの確認方法
スマホの対応しているバンドの確認方法
スマホ実機で確認する方法を紹介します。
開発者モードを有効にします
これで準備ができました。
次に、SIMのバンドを表示します
執筆:2019.02.03
編集:2019.02.03
編集:2019.02.03
スマホの対応しているバンドの確認方法
- 付属の説明書の仕様ページで確認する
- スマホメーカーの製品情報ページの仕様で確認する
- スマホ実機で確認する
スマホ実機で確認する方法を紹介します。
開発者モードを有効にします
- 設定 → 端末オプションを開きます
- 開発者になりましたと表示されるまで
シリアル番号を数回タップします
これで準備ができました。
次に、SIMのバンドを表示します
- 電話アプリで
*#*#7378423#*#*を入力してサービスモードを起動します - Service infoをタップします
- Configurationをタップします
- 対応バンドの一覧が表示されます
Working band/s という項目になっています
カテゴリー: スマホ
2019.02.03
Androidのシャットダウンコマンド
電源を切る
再起動
スマホの画面が反応しない
強制終了したい
強制再起動したい
電源を切る
reboot -p
再起動
reboot
スマホの画面が反応しない
強制終了したい
電源ボタンを長押し
強制再起動したい
USB接続して
adb shell reboot
adb shell reboot
» 続きを読む
カテゴリー: 総合
2016.11.29