嗨,这儿?有一个问题。nexus5棒棒糖5.1的问题。在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中的i代码运行正常。但是,当某个计数是,更新不会在另一个屏幕下返回错误。更.!在完成我的代码后,重新运行,在它是另一个井之后,同样的现象会发生在某个数字上。如果你有能力谁知道这件事?
对不起,英语不太好。
发布于 2015-05-27 09:32:22
我已经解决了。ScreenshotClient sc和sp < IBinder > display应声明为全局变量。如果类被声明,错误会发生几次。(例如。它在要重复的函数中声明。)
https://stackoverflow.com/questions/29909317
复制相似问题