BLE传输字符串和传输图片

来源:互联网 发布:做农村淘宝合伙人优势 编辑:程序博客网 时间:2024/05/20 06:06

如果做一个有关BLE的应用的话,就有可能涉及到将一段字符串(短信内容、联系人名字、号码串)或者一张图片发送到BLE设备上面。

1、传输字符串

字符串也是需要转成byte数组,然后再进行传输

String textContent = "你好,Android BLE";textContent.getBytes("UTF-8");//这里设置编码格式,可以根据需求进行设置

通过上面的代码,我们就可以把任意字符串转化成byte数组,再转成16进制字符串,在进行拼接等操作。

2、传输图片

由于BLE传输需要使用byte类型传输,所以我们也需要将图片数据转成byte数组的形式:

// 将Bitmap转化成byte数组,ratio表示压缩率public static byte[] getBitmapByte(Bitmap bitmap, int ratio) {        ByteArrayOutputStream out = new ByteArrayOutputStream();        bitmap.compress(Bitmap.CompressFormat.JPEG, 100 / ratio, out);        try {            out.flush();            out.close();        } catch (IOException e) {            e.printStackTrace();        }        return out.toByteArray();}//从byte数组中解析出来Bitmappublic static Bitmap getBitmapFromByte(byte[] temp) {        Bitmap bitmap = null;        if (temp != null) {            try {                bitmap = BitmapFactory.decodeByteArray(temp, 0, temp.length);            } catch (Exception e) {                LogUtils.e(TAG, "getBitmapFromByte exception :" + e.toString());            }        }        return bitmap;    }//还有其他的一些方法,比如从存储空间中解析一张图片为Bitmap对象。
1 0