文档章节

Android JNI 读写Bitmap的方法

 国仔饼
发布于 06/21 10:40
字数 155
阅读 9
收藏 0
点赞 0
评论 0

Java层创建Bitmap,通过JNI将Bitmap传到C/C++进行处理

Java部分

public static native boolean greenBitmap(Bitmap bitmap);

C/C++部分

JNIEXPORT jboolean JNICALL Java_com_test_Test_greenBitmap
  (JNIEnv *, jclass, jobject);
#include <android/bitmap.h>

JNIEXPORT jboolean JNICALL Java_com_test_Test_greenBitmap
  (JNIEnv *env, jclass, jobject src)
{
    unsigned char *srcData = NULL;
    AndroidBitmap_lockPixels(env, src, (void**)&srcData);
    AndroidBitmapInfo srcInfo;
    AndroidBitmap_getInfo(env, src, &srcInfo);

    int pixel = srcInfo.width * srcInfo.height;
    for(int i=0;i<pixel;i++)
    {
        srcData [4*i] = (unsigned char)0;//red
        srcData [4*i+1] = (unsigned char)255;//green
        srcData [4*i+2] = (unsigned char)0;//blue
        srcData [4*i+3] = (unsigned char)255;//alpha
    }

    AndroidBitmap_unlockPixels(env, src);
    return true;
}

Android.mk

LOCAL_LDLIBS += -ljnigraphics

 

© 著作权归作者所有

共有 人打赏支持
粉丝 0
博文 28
码字总数 5568
作品 0
深圳
ANDROID JNI之JAVA域与c域的互操作

本文讲述AndroidJava域与C域互操作:Java域调用c域的函数;c域访问Java域的属性和方法;c域生成的对象的保存与使用。重点讲解c域如何访问Java域。 虽然AndroidJNI实现中,c实现与c++实现是有...

垂盆草
2012/10/13
0
0
[Android] Android开发优化之——对Bitmap的内存优化

在Android应用里,最耗费内存的就是图片资源。而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。所以,对于图片的内存优...

haman
2014/01/25
0
1
Android开发优化之——对Bitmap的内存优化

在Android应用里,最耗费内存的就是图片资源。而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。所以,对于图片的内存优...

KingMing
2015/04/03
0
0
Android应用开发中对Bitmap的内存优化

在Android应用里,最耗费内存的就是图片资源。而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。所以,对于图片的内存优...

等待流星
2014/09/01
0
0
android Bitmap的内存优化

在Android应用里,最耗费内存的就是图片资源。而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。所以,对于图片的内存优...

ljrapple
2014/08/12
0
0
Android中的File文件存储及读取file中的Bitmap

今年看了下android的文件存储,大致和java实现差不多 android提供了如下两个方法来打开本应用程序的数据文件的IO流: FileInputStream openFileInput(fileName); //输入流 FileOutputStream...

爱吃橙子的小石头
2014/12/07
0
0
[Android] Bitmap OOM解决办法一

尽量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource来设置一张大图, 因为这些函数在完成decode后,最终都是通过java层的createBitmap来完成的,需要消耗更多内存...

枫兮兮
2014/02/11
0
0
Android小白成长之初级篇:NDK配置

AndroidNDK(Native Development Kit)实际上属于JNI(Java Native Interface)的一部分,JNI就是允许Java代码和其他语言写的代码进行交互。Android基于Java平台,自然也是支持这个特征了,因...

76135
2012/07/15
0
0
Android Graphic : apk and Skia/OpenGL|ES

Android apk里面的画图分为2D和3D两种:2D是由 Skia 来实现的,也就是我们在框架图上看到的SGL,SGL也会调用部分opengl的内容来实现简单的3D效果;3D部分是由OpenGL|ES实现的,OpenGL|ES是O...

Jerikc
2014/05/27
0
0
Android 网络编程 目录

Android 网络编程 目录 Android 网络编程1 Http协议 to be continued... Android 架构师之路 目录 Android 架构师之路1 UML图之用例图 Android 架构师之路2 UML图之类图 Android 架构师之路3...

香沙小熊
06/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Jvm堆内存的划分结构和优化,垃圾回收详解(详细解答篇)

在JVM中堆空间划分如下图所示 上图中,刻画了Java程序运行时的堆空间,可以简述成如下2条 1.JVM中堆空间可以分成三个大区,新生代、老年代、永久代 2.新生代可以划分为三个区,Eden区,两个幸...

嘻哈开发者
12分钟前
0
0
CentOS 7.4 设置系统字符编码

1.语言变量LANG在 /etc/locale 文件中。 2.可以通过/ect/profile 来修改LC_TYPE 变量的值 添加如下代码 export LC_ALL="zh_CN.GBK" export LANG="zh_CN.GBK" 到profile文件中,变量的可以修改...

qimh
13分钟前
0
0
Kafka相关使用

安装前提,需要有jdk环境,还有zookeeper环境 zookeeper下载地址:https://www.apache.org/dyn/closer.cgi/zookeeper/ zookeeper安装参考:https://www.jianshu.com/p/f7037105db46 kafka的下......

朝如青丝暮成雪
13分钟前
0
0
CentOS7 解决无法使用tab自动补全 tab代码提示

一、前言 对于刚刚开始学习linux的新人来说,linux的一切都显着神秘,只能惊叹于大牛在Linux上行云流水的操作。今天介绍一下在linux中自动补全的功能。 对于新人来说,在不懂得技巧的情况下,...

ziluopao
19分钟前
0
0
redis安装

https://www.cnblogs.com/feijl/p/6879929.html

ghou-靠墙哭
20分钟前
0
0
Spring核心——注解自动装载

从配置上扩展 之前的文章介绍了Spring的IoC容器配置管理方面的详细内容,需要了解的可以从IoC容器的设计模式开始阅读。在介绍基于注解配置的配置之前我们再重复一下在之前提到的基本认识: ...

随风溜达的向日葵
23分钟前
1
0
ElasticSearch学习(8)—— SearchType

Elasticsearch有四种类型的SearchType 1、query and fetch 向索引的所有分片(shard)都发出查询请求,各分片返回的时候把元素文档(document)和计算后的排名信息一起返回。这种搜索方式是最...

叶枫啦啦
24分钟前
0
0
MYSQL备份工具-mysqldump

介绍 mysqldump 是文本备份还是二进制备份 它是文本备份,如果你打开备份文件你将看到所有的语句,可以用于重新创建表和对象。它也有 insert 语句来使用数据构成表。 语法 mysqldump 的语法是...

郭恩洲_OSC博客
26分钟前
0
0
我的第一个go web框架

使用了beego等go web开发框架之后,感觉各种不方便,尤其是在接收参数、和自定义输出的时候,各种难受,定义各种model,这不是找事情嘛??尤其是在角色权限控制的时候我也感觉力不从心。。。...

独坐苔痕但观罗敷
27分钟前
0
0
自动代码生成图形化工具

自动生成Spring代码 https://github.com/EliMirren/Spring-generator 自动生成Vertx https://gitee.com/duhua/vertx-generator...

奋斗的小牛
30分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部