读书人

对android系统截屏理解的来帮忙了

发布时间: 2013-08-11 22:22:29 作者: rapoo

对android系统截屏了解的来帮忙了
android2.3.3源码,以下是jni编的so部分代码

const String16 name("SurfaceFlinger");

sp<ISurfaceComposer> composer;

getService(name, &composer);



sp<IMemoryHeap> heap;

uint32_t w, h;

PixelFormat f;

composer->captureScreen(0, &heap, &w, &h, &f, 0, 0);

但是heap这里好像没有获取到数据,应该是没有权限,我把能加的权限全部加了,还是搞不定
<uses-permission
android:name="android.permission.READ_FRAME_BUFFER" />
<uses-permission
android:name="android.permission.ACCESS_SURFACE_FLINGER" />
[解决办法]
hello ,建议你了解下android权限管理,
<uses-permission
android:name="android.permission.READ_FRAME_BUFFER" />
<uses-permission
android:name="android.permission.ACCESS_SURFACE_FLINGER" />
这两个权限均不是APP_XXX 的用户能获取的

第三方的应用程序UserID是从APP_0开始的
如果你程序能得到system权限,此办法或可行
[解决办法]
有root权限 然后把应用推到 system/app 目录 尝试一下

读书人网 >Android

热点推荐