晕, 你用native的surface啊?这个做测试还凑合,做开发乘早放弃。surface不是google开放的接口,google不保证在各个版本都能使用,且各设备厂商可以自己修改这些私有接口,因此不能保证你的代码再所有平台所有版本都能跑。如果你要硬用的话,你需要将源码中 framework/base/include 及system/core/include下的几个头文件目录拷过去,通过LOCAL_C_INCLUDES指定,才能编译过。
要链接过的话,还要拷贝几个系统的so才可以。这种情况下,可以使用surface的接口, 但是surface的interface和overlay你还是不能用。一个原因是surface的getISurface接口是私有的,另外一个原因是,permission不允许!