2

このユーティリティがバックグラウンドで実行されている間、フォアグラウンドで実行されているものすべてのスクリーンショットを撮ることができるユーティリティアプリを自分で構築しています。ユーティリティはジェイルブレイクされたデバイスで実行されるため、サンドボックスに限定されずにプライベートAPIにアクセスできます。ユーティリティアプリはバックグラウンドで(デーモンとして、またはバックグラウンダーを使用して)実行されているため、表示されている画面にアクセスしてスクリーンショットを生成するにはどうすればよいですか?

これが必要な理由は、プログラム的/リモートでスクリーンショットを撮りたいからです。ユーティリティはスクリーンショットを撮り、ローカルサーバーにアップロードします。私はこれを内部テストツールの一部として使用しています。

よろしくお願いします!

4

1 に答える 1

2

画面全体のスクリーンショットを。で取得できるはずですUICreateScreenImage()。これにより、CGImageRefが得られます。これをでUIImageに変換できます[UIImage imageWithCGImage:screenshot]。次に、これをサーバーにアップロードし、でイメージを解放できますCGImageRelease(screenshot)

于 2012-11-12T06:59:05.490 に答える