你好呀?有一个问题。nexus5 lollipop5.1 的问题。surfaceflinger 有一个代码是用来响应 ScreenshotClient 更新中使用的设备屏幕信息的。代码如下所示。
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();
... ...
以上代码,在其他棒棒糖版本中运行正常。当然,nexus7同版本也运行正常。但是,nexus5 的变化。我的代码要参考,但继续代码循环是。而且因为你试图继续屏幕。首先我在nexus5中的代码运行正常。但是,当达到一定计数时,更新不会出现在另一个屏幕下以返回错误。更多的 ...!完成我的代码后,重新运行,在另一口井之后,当涉及到一定数量时,也会出现同样的现象。如果你有能力谁知道这件事?
我很抱歉它的英语不太好。