問題タブ [android-mediaprojection]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1648 参照

android - ユーザーが通知バーから投影をキャンセルしたときの Android MediaProjection API コールバック

現在、Android 5.0 MediaProjection API を使用しています。アプリケーションからプロジェクション セッションを正常に開始できましたが、ユーザーはいつでも通知バーに移動してメディア プロジェクションを停止できることに気付きました。私の目標は、このイベントをキャプチャして、いくつかのクリーンアップ アクションを実行することです。MediaProjection オブジェクトに MediaProjection.Callback を登録しましたが、通知バーからプロジェクションを手動でキャンセルし、システムが MediaProjection.Callback の onStop メソッドを呼び出そうとすると、次のように nullpointer 例外が発生します。

この時点で私の MediaProjection.Callback は事実上何もしません。完全を期すために貼り付けています。

なぜこれが起こっているのですか?

よろしくお願いします!

0 投票する
1 に答える
1431 参照

android - Lollipop を使用してプログラムでスクリーンショットをキャプチャする方法

Media Projectionパッケージは新しい Lollipop であり、アプリがデバイスの画面をリアルタイムでキャプチャしてビデオにストリーミングできるようにします。これを使用して 1 つの静止スクリーンショットをキャプチャすることもできると期待していましたが、これまでのところ成功していません。もちろん、キャプチャされたビデオの最初のフレームは機能しますが、デバイスのピクセル解像度に一致する完全で損失のないスクリーンショットを目指しています。キャプチャされたビデオからの静止画では、それを提供できません。

私は多くのことを試しましたが、解決策に最も近いのは、最初に目に見えないアクティビティを起動することでした。次に、このアクティビティは、ユーザーの許可を求めることを含む、画面キャプチャを開始するためのAPI の例に従います。スクリーン キャプチャを有効にすると、スクリーン イメージが SurfaceView に表示されます。ただし、SurfaceView からビットマップをキャプチャする方法が見つかりません。これについては多くの質問議論がありますが、解決策が機能していないようであり、それが不可能であるという証拠がいくつかあります.

何か案は?

0 投票する
0 に答える
3124 参照

android - 画面をキャプチャしようとすると、ImageReader のビットマップが常に空白になる

スクリーン キャプチャに MediaProjection API を使用して、ImageReader を作成し、以下のように、キャプチャしたスクリーンへのアクセス ポイントとしてフィードを使用します。

mImageReader = ImageReader.newInstance(mWidth, mHeight, ImageFormat.JPEG, 2);

ただし、結果の画像は常に空白の透明な画像であり、結果のビットマップのすべてのピクセルは #00000000 に設定されます:(

私はしばらくこれに固執しており、本当に助けを借りることができるので、どんなアドバイスも大歓迎です. (また、私はすでにこれらの投稿を試しましたが、すべて同じ結果です-これこれ、およびこれ

編集:次の行でイメージ リーダー サーフェスを渡します。

0 投票する
1 に答える
1148 参照

android - 古い API でメディア プロジェクションを使用するにはどうすればよいですか?

画面の内容を1分間記録したい。Google で検索したところ、API レベル21MediaProjecionクラスが含まれていることがわかりました。私のアプリは api level 18用にビルドされています。

このクラスは使えますか?これをサポートするライブラリはありますか?

0 投票する
2 に答える
888 参照

android - Android 5、画面を生のRGBバッファとしてキャプチャ

MediaProjectionManager を使用して、生の rgba バッファー (エンコードなし) として画面をキャプチャするにはどうすればよいですか?

画面をキャプチャして MediaCodec を使用してエンコードする方法の多くの例を見てきましたが、代わりに独自のエンコーダーを使用したいと考えています。