こんにちは?1つの質問があります。nexus5 lollipop5.1 の問題です。surfaceflinger を使用して ScreenshotClient update でデバイスの画面情報に応答して来るコードがあります。コードは次のようになります。
unsigned int sw, sh, xsize, gsize, stride;
... ...
ScreenshotClient sc;
sp<IBinder> display = SurfaceComposerClient::getBuiltInDisplay(ISurfaceComposer::eDisplayIdMain);
if( sc.update(display,Rect(), sw,sh, false) != NO_ERROR) {
... ...
sc.release();
return 0;
}
stride = sc.getStride();
mapbase = sc.getPixels();
... ...
上記のコードは、他の lollipop バージョンでは正常に動作しています。もちろん同じバージョンのnexus7も正常に動作します。ただし、nexus5 の変更。参照する私のコードですが、コードのループを続けます。そして、画面を継続して取得しようとするためです。まず nexus5 のコードは正常に動作しています。ただし、一定の回数になると、他画面下に更新が来ずエラーを返します。もっと ...!自分のコードを完成させた後、再実行して、別の井戸の後で、特定の数になると同じ現象が発生します。あなたがこれについて知っている能力者なら?
英語が下手ですみません。