关于在android 图像开发中使用Skia引擎的注意事项

最近一段时间一直在开发基于Android平台的一款专业图像处理软件,由于Android平台对应用程序的内存限制以及java的处理效率问题,需要用到NDK+Skia的方式来进行,采用Skia直接绘制屏幕要比用Java对象绘制屏幕少消耗至少一半的内存,其实在Android内部,仔细查看源代码的话,其实Android平台本身的图像引擎就是基于Skia 2D图像引擎的,但由于Skia 本身不是很稳定,所以Skia并没有被包含在NDK的发布包中。

下面我说说在使用Skia引擎时的注意事项:

1、网上很多人建议静态编译,从我自己的经验来看,这种方法其实并不好,因为我们在项目中一般都会结合Java对象和NDK来使用Skia,静态编译可能会造成一些难以预料的问题。

2、关于Skia库libskia.so,可以直接从相关设备上提取,不过由于Skia库的不稳定性,版本依赖非常严重。 adb pull /system/lib/libskia.so 这样的命令就可以。

3、编译自己的动态库时,需要包含正确版本的Skia源文件,一定不能混用,比如用3.1版本的源文件来编译用于4.0版本的动态库,这样非常容易出问题。

4、在做Skia相关的应用时,一定要做好版本关联。可以使用git下载不同版本的Android的skia源文件。

5、skia的源文件在Android源代码/external/skia目录下。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值