問題タブ [surfaceflinger]

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 に答える
1068 参照

android - 「SurfaceView」はsystraceの結果で何を表していますか?

ゲームプレイの吃音の問題を調査したところ、ゲームの eglSwapBuffer() と surfaceflinger の postFramebuffer() の間に、常に「SurfaceView」の遅延が 0.5 ミリ秒から 10 ミリ秒発生することがわかりました。これは一体何を表しているのでしょうか。VSYNCの表示ポイントと関係がありますか?

http://i.stack.imgur.com/n8MvG.png

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

android - Android OS のデフォルトの自然な向きを変更するには?

デバイス TI am335xevm で Android Jellybean 4.2.2 を実行しており、横向きがデフォルト/自然な向きになっています。

デバイスのデフォルト/自然な向きを縦向きに変更するにはどうすればよいですか?

これが私が今まで試したことです、

1) setprop ro.sf.hwrotation 90build.propに追加しましたが、何もしませんでした。

2) /data/data/com.android.providers.settings/databases/settings.dbのuser_rotation値を変更し、アプリの向きのみを変更しました。ホーム画面とランチャーの向きは横向きのままです。

3)リンクで指定されたものと同様の PhoneWindowManager.java を変更: phonewindowmanagerを変更して自然な向きを変更する

このオプションは機能します。ただし、ブートアニメーションは横向きのまま表示れ、アニメーションが終了すると、ディスプレイが回転して (回転アニメーションで) 縦向きになります。この回転を回避し、起動アニメーションの前にデフォルト/自然な向きを変更するにはどうすればよいですか?

注:ポートレートのように見えるように、独自のポートレート画像でブートアニメーションをすでにオーバーライドしています。それでも、ブートアニメーションの終了後に回転します。では、一般的な解決策は何でしょうか?

アドバイスをいただければ幸いです。

SurfaceFlingerに関連するものですか?Android Web サイトのこの記事も参照したいと思います。ハードウェア コンポーザーでの事前回転

(参考までに、質問はアプリ/アクティビティの向きに関するものではなく、カスタムデバイス用にAndroid OSを構築するときのデバイスの自然な向きに関するものです)

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

android - SurfaceFlinger 共有ライブラリについて学ぶ

Android-4.0.4 の SurfaceFlinger ライブラリを使用するネイティブ Android アプリケーションを開発したいです。SurfaceFlinger ライブラリが Android でどのように機能するかについて学びたいです。それはフローであり、テスト データを使用してそれをビルドおよび実行/デバッグします。アプリ (cpp ファイル) から正しいメソッドを呼び出すことができるように、SurfaceFlinger のフローを理解したいと考えています。Android では SurfaceFlinger API が安定していないことを知っているので、特に Android 4.0.4 で実行されているデバイスをアプリのターゲットにしています。

また、共有ライブラリのビルドとデバッグに使用するツールと、それを実行する手順も知りたいです。

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

android - Android の「Surface」クラスを使用するにはどうすればよいですか?

Surface、SurfaceHolder、EGLSurface、SurfaceView、GLSurfaceView、SurfaceTexture、TextureView の詳細な説明はありますか? 特に:

  • SurfaceView と TextureView の違いは何ですか?
  • OpenGL ES を使用するには GLSurfaceView を使用する必要がありますか?
  • Surface と EGLSurface はどのように相互作用しますか?
  • SurfaceTexture は何をしますか?
  • SurfaceView で描画したものが、他のすべての上または下に移動する必要があるのはなぜですか?
  • SurfaceFlinger とは何ですか?
  • ステータス バーとナビゲーション バーの構成はどのように機能しますか?
  • ところで、Android でゲーム ループを構成する正しい方法は何ですか?
0 投票する
2 に答える
3605 参照

android - Android 4.4、サービス「SurfaceFlinger」が終了しました

ScreenshotClient を使用して、ループで画面をキャプチャするネイティブ プロセスを実行しています。プロセスを閉じると、数回実行した後、ランダムに「サービス 'SurfaceFlinger' が死亡しました」というメッセージが表示され、画面が再起動します。これは、Android 4.2 では発生しません。

これはバックトレースです:

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

android - Androidでsurfaceflingerなしで画像を表示する方法

Androidでsurfaceflignerが起動する前に何かを描く方法は?

この状況では、フレームバッファ デバイスを備えたある種の従来の Linux であるため、フレームバッファに直接アクセスしても問題ありません。

HWComposer を直接使用し、egl を直接使用するのはどうですか?