これに対する解決策を見つけました。
SuperSU
の下のアプリには 3 つのオプションがありますSettings Tab > Default Access
。
http://prntscr.com/oyzeq8
- プロンプト : アプリは必要なときにいつでも許可を求めることを意味します。
- Grant : これは、SuperSU が必要に応じてアプリのアクセス許可を自動的に付与することを意味します。
- Deny : これは、SuperSU が必要に応じてアプリの許可を自動的に拒否することを意味します。
したがって、2 つのケースがあります。
1 . SuperSU
アプリのデフォルトで「許可」が設定されている場合、アプリはアプリケーションで許可をSettings Tab > Default Access
求めません。SuperSU
2 . SuperSU
アプリのデフォルトで「Prompt」が設定されている場合Settings Tab > Default Access
、アプリは必要に応じてSuperSU
許可を求めます。
アプリの起動時に許可を求めるためにSuperSU
、RootTools を使用して SuperSU アクセスを確認しました。
- https://github.com/Stericson/RootTools
- https://code.google.com/archive/p/roottools/wikis/Usage.wiki
そのため、RootTools を使用して単純な条件でルート アクセスを確認しました。
if (RootTools.isAccessGiven())
Toast.makeText(this, "SU Permission Granted", Toast.LENGTH_SHORT).show();
else
Toast.makeText(this, "SU Permission Denied", Toast.LENGTH_SHORT).show();
そのため、 が実行されるたびRootTools.isAccessGiven()
に、ポップアップが自動的に開き、アプリの SuperSU パーミッションが要求されます。後で、SuperSU アプリケーションからも変更できます。
これは私が見つけて実装したものです。現在、すべてが正常に機能しています。
ありがとうございました