デバイスをジェイルブレイクできる場合は、LaunchDaemon を作成するか、既存のものを使用します。LaunchDaemon は、デバイスの再起動および起動時に呼び出される plist 形式のファイルです。open
K3A によって作成されたという名前のファイルも必要です。
ここopen
からダウンロード
/usr/bin/に移動する必要がありopen
ます。または、アプリ内に配置することもできますが、権限を設定することは問題ではありません0755 and root:wheel
次に、LaunchDaemons に進みます。これらはここに格納されます
/System/Library/LaunchDaemons
ここに例があります。LaunchDaemon に名前を付けるとしましょう
com.gauravstomar.test.plist
com.bundle.identifier
アプリ識別子を入れてくださいと書かれている場所にはInfo.plist
、アプリディレクトリの内部にもあるかもしれません。CFBundleIdentifier
plist内に次の情報を挿入します
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.gauravstomar.test</string>
<key>ProgramArguments</key>
<array>
<string>open</string>
<string>com.bundle.identifier</string>
</array>
<key>RunAtLoad</key>
<true/>
<key>StartInterval</key>
<integer>1</integer>
</dict>
</plist>
ラベルは、plist 拡張子を除く LaunchDaemon.plist と同じ名前である必要があります
ProgramArguments は、ファイルを開いてアプリを起動するものです
RunAtLoad により、再起動時にこの plist が起動されます
StartInterval は、ユーザーがアプリを終了した場合、1 秒後に LaunchDaemon.plist を開いて元に戻します。ユーザーがまだアプリ内にいる場合は、何も起こりません。
LaunchDaemon のアクセス許可が次のように設定されていることを確認してください。
0644 root:wheel
ホームボタンが無効になるように、引き続き mobileconfig を使用できます。評価が完了したら、LaunchDaemon を無効にして、次のコマンドでアプリの再起動を停止できます。
launchctl unload/System/Library/LaunchDaemon/com.gauravstomar.plist
さらにサポートが必要な場合はお知らせください。