Androidでスクショ禁止のアプリをスクショできるようにする
筆者の環境
端末:日本版 Xiaomi Mi 11 Lite 5G(renoir) 6GB+128GB
OS:Android13(Pixel Experience Plus 13.0 v20230530-0554-official)
備考:BLU済、Magisk 26.3でroot化済
非rootでもできますがroot環境のほうが遥かに楽。
何ができるようになるのか
通常ではスクショやスクレコができない(スクショすると真っ黒になる)アプリでも正常にスクショできるようになる。
スクショ/スクレコできないアプリというのは主に以下のようなもの。
個人情報を含むアプリ
クレカ決済アプリ
銀行アプリ …etc
著作権で保護されたコンテンツを含むアプリ
テレビ・映画・アニメ配信アプリ
音楽配信アプリ
DLNAクライアントアプリ..etc
非root環境の場合
root環境なくてスマホだけで完結させたい人用。
なかなか面倒。
必要なもの
Disable FLAG_SECURE(Xposedモジュール)
LSPatch
Shizuku
スクショしたいアプリ(インストール済みでOK)
①Disable FLAG_SECURE、LSPatch、Shizukuをインストールする
前者2つはGithubのReleaseページから最新版のapkをダウンロードしてインストールする。
「不明なインストールを~」とか出るかもしれないが許可しないとインストール出来ないので許可する。
Shizukuは普通にGooglePlayから入れる。
②Shizukuを有効にする
まず設定アプリを開いてデバイス情報を開き、一番下のビルド番号を連打して開発者向けオプションを有効にする。
そして設定アプリのシステムの項目に「開発者向けオプション」が増えているのでUSBデバッグとワイヤレスデバッグを有効にする。
Shizukuを起動して「ワイヤレスデバッグで開始」の「ペアリング」ボタンを押して通知を有効にしておく。
通知を有効にしたら下の方のボタンから開発者向けオプションに移動する。
移動したら有効になっているワイヤレスデバッグの項目(スイッチではなく「ワイヤレスデバッグ」と書かれている部分)を押し、「ペア設定コードによるデバイスのペア設定」を押す。
6桁の数字が出てくるのと同時にShizukuの通知にペアリングコードが打ち込めるようになるので入力してペアリングする。
ペアリングできたらShizukuのアプリに戻り「開始」を押して、一番上に「Shizukuは実行中」と出ればOK。これでやっとShizukuが有効になった。
③LSPatchからDisable FLAG_SECUREをスクショしたいアプリに当ててインストールする
LSPatchの「管理」タブを開き、右下の+から「インストールされているアプリから選択」を選んでアプリを指定する。保存場所の指定があったら適当なところを指定しておく。
パッチモードを「ポータブル」にして「モジュールを埋め込む」からDisable FLAG_SECUREを指定して「パッチを開始」する。
パッチが終わったら「インストール」を押してインストールする(元々のアプリはアンインストールされる)。
root環境の場合
root化は面倒ですがもっと楽です。
必要なもの
MagiskとLSPosedはインストール済みだと仮定して
Disable FLAG_SECURE
スクショしたいアプリ(インストール済みでOK)
①Disable FLAG_SECUREをインストールする
特筆すべき点はなし。非rootと一緒。
②LSPosedでDisable FLAG_SECUREを有効にしてアプリに適用する
LSPosedのモジュールタブからDisable FLAG_SECUREを選択して有効にし、システムフレームワークとスクショしたいアプリを選択。システムフレームワークに適用したので再起動しておく。
これでスクショできるようになる
【2024/10/11 追記】少し前から、当方の環境(非root環境)においてDixim PlayやどこでもディーガにDisable FLAG_SECUREを当てると起動時にクラッシュするようになりました(現状 対策はありません)
以下のようにDLNAクライアントアプリでもスクショできるようになる。
ぼかし加工は筆者が「今更だが一応…」と思ってかけたもの、本来は問題なくスクショできる。


コメント
6今やってるんですが、非Rootのほうですね、全部ダウンロードはできて最後までいけたんですが、後がよくわらない。
怪し者ではないんで、お願いしたいこともあるんで、連絡とかはできませんか?
最後の最後インストールでエラーを吐いてしまいました……非rootです
下のがエラーコードみたいですけどインストールキャンセルなんてしてないです
INSTALL_FAILED_USER_RESTRICTED: Install canceled by user
追記
ディレクトリから直接APKをインストールしようとしたところ「お使いのスマートフォンに対応していないため、アプリをインストールできませんでした」と表示されました
これはもう詰みでしょうか?
Xiaomi HyperOS:Ver. 1.0.7.0.ULFJPSB
Android:Ver. 14 UKQ1.230917.001
こちら(非root環境・hyperos2)でも最近はlspatch(公式)でパッチを当てても正常動作しないことが多発しているのでどうしようもなくなってきてるかもしれないですね……
なるほど…
潔く諦めます…