我用
private Bitmap BytesToBimap(byte[] b) {
if (b.length != 0) {
return BitmapFactory.decodeByteArray(b, 0, b.length);
} else {
return null;
}
}
方法转换,
bm = BytesToBimap(array);
System.out.println("bm :"+bm);
if( bm != null){
imageview.setImageBitmap(bm);
}else{
System.out.println("没有正常形成bitmap!");
}
array不为空,事实证明执行的是 return BitmapFactory.decodeByteArray(b, 0, b.length); 这句。
但是转换出来的bm却是空,这是什么情况。
private Bitmap BytesToBimap(byte[] b) {
if (b.length != 0) {
return BitmapFactory.decodeByteArray(b, 0, b.length);
} else {
return null;
}
}
方法转换,
bm = BytesToBimap(array);
System.out.println("bm :"+bm);
if( bm != null){
imageview.setImageBitmap(bm);
}else{
System.out.println("没有正常形成bitmap!");
}
array不为空,事实证明执行的是 return BitmapFactory.decodeByteArray(b, 0, b.length); 这句。
但是转换出来的bm却是空,这是什么情况。
解决方案 »
- android性能提高问题(哥已经是忍无可忍)
- android如何使用syncML来同步通讯录
- 求android自定义控件如何添加点击事件,长按事件
- android一个小问题
- 关于SlidingDrawer的问题
- 大侠们...快出来帮帮小弟!怎么停止android访问的页面~~~~~~~~~~~~.~~~~~~~`
- JNI 捕获不到异常的原因?
- 一个简单的JAVA server socket如何移值到安卓平台 有源码
- eclipse 的 android模拟器如何 测试多点缩放呢?
- fragment+ViewPager+listview更新显示与更新问题
- android4.0平板chrome浏览器加载html5视频页面有声音无画面
- GridView BaseAdapter 求解
试试读取一个真实的.png或者.jpg文件,然后生成一个图片。
jbyteArray test=(*env)->NewByteArray(env,_size);
char a[_size];
// char a[20] ="-----101.-2001-1110"; 测试用的数据,结果在java中输出都在原本的基础上大了48.(- 输出的是45)
memcpy(a,bits,_size);
//(*env)->SetByteArrayRegion(env,test,0,20, a);
(*env)->SetByteArrayRegion(env,test,0,_size, a);
munmap(bits, _ScreenSize);
close(_fb);
//return test;
return test;java中:byte array[] = ndk.SendPicThread_ScreenShot();
System.out.println("array[byte]: " + array.length);
for(int i=0;i<array.length;i++)
{ if(i%1000==0){
System.out.println("array ["+i+"] :"+array[i]);
}
//array[i]=(byte) (array[i]-48);
}bm = BitmapFactory.decodeByteArray(array, 0, array.length, null);
System.out.println("bm :" + bm);
if (bm != null) {
imageview.setImageBitmap(bm);
} else {
System.out.println("没有正常形成bitmap!");
}
结果array中有数据,但是却输出:没有正常形成bitmap。。
怎么才能不丢失0啊。穿过去的数据我感觉都是错误的。大部分数据都是-1,其他的又是很多是负数。
我这里就是刚才说的那样处理的
我不知道你的test从哪里赋值的,so。。不好说
BitmapFactory.decodeByteArray(b, 0, b.length);
=========================================>>>>
BitmapFactory.decodeByteArray(b, 0, b.length - 1);