6

私は美術館の展示会でいくつかの iPad を使用し、他の人が開発したアプリを実行しています。ホーム ボタンについて説明しましたが、アプリがクラッシュして、ユーザーがホーム画面のままになることがあります。ここから、他の未承認のアプリにアクセスできます。

博物館は、必要な解決策が得られるのであれば、iPad をジェイルブレイクすることを嫌うわけではないので、私は launchd を KeepAlive タグとともに使用し、.plist ファイルを /Library/LaunchAgents ディレクトリに配置して、アプリがクラッシュした場合にアプリを閉じたり再生成したりしないようにする

これまでのところ、iPad に付属しているデフォルトのアプリと Cydia がインストールしたアプリで動作させることに成功していますが、必要なアプリを再起動することはできません。/User/Applications ディレクトリと /Applications から試してみました。誰かが可能な解決策を提案できますか、それとも私は時間を無駄にしていますか? 以下の plist ファイルから XML を挿入しました。

   <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.MVFieldguide.launchd</string>
<key>ProgramArguments</key>
    <array>
    <string>/Applications/Field Guide 2010.app/Field Guide 2010</string>
    </array>

<key>RunAtLoad</key>
    <true/>

<key>KeepAlive</key>
    <dict>
        <key>SuccessfulExit</key>
        <true/>
    </dict>

4

2 に答える 2

3

App Store アプリケーションはアプリケーション フォルダに保持されないため、これは機能しません。2つの選択肢が考えられます。

  1. Cydia に AppLinks をインストールします。これにより、すべての App Store アプリのシンボリック リンクが作成され、/var/mobile/AppLinks に配置されます。次に、plistファイルにアプリケーションへのパスを次のように入力します

    /var/mobile/AppLinks/Field Guide 2010/Field Guide 2010

  2. 従来のようにアプリを iPad にインストールする代わりに、Xcode から ipa を取得し、.app バンドルを抽出することができます。次に、手動で /Applications/ にインストールすると、launchd plist をそのまま使用できるようになります。

最初のオプションをお勧めします。これにより、.app バンドルをアプリケーション フォルダーに手動で配置しなくてもアプリを更新できるからです。最初のオプションを使用しても、アプリを更新するためのワークフローはまったく変わりません。

また、これを行う場合、アプリを更新して終了する前に plist を削除する必要があることに注意してください。実行中のアプリを更新することはできないと思います。

于 2011-05-08T00:33:28.127 に答える
1

iOS 6.0 には、デバイスを特定のモードにロックするための何らかの修正が含まれている可能性があります... わかりません (NDA)

ハッキングされた iOS 5.1 でも、次のことができます。

バンドル識別子を使用してアプリを使用します....

com.apple.calculator で電卓を開くことができます....フォルダーは必要ありません!

これがlaunchdフォルダーに入れたスクリプトです...

「open com.apple.calculator」端末コマンドを使用できるように、最初に cydia から Open アプリをインストールします。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Disabled</key>
    <false/>
    <key>Label</key>
    <string>com.perceptdev.tink</string>
    <key>ProgramArguments</key>
    <array>
        <string>open</string>
        <string>com.orbitusrobotics.thegatekeeper</string>
        <string></string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>StartInterval</key>
    <integer>10</integer>
    <key>WatchPaths</key>
    <array/>
</dict>
</plist>
于 2012-07-15T13:57:59.683 に答える