实际上,我正在开发一个用于近距离营销的android移动应用程序,我的应用程序应该接收来自营销人员的卡片和优惠券,并显示收到的商品。
以下代码来自google开发人员,并演示如何使用消息侦听器解析从BLE信标接收的消息:
mMessageListener = new MessageListener() {
@Override
public void onFound(Message message) {
// Do something with the message here.
Log.i(TAG, "Message found: " + message);
Log.i(TAG, "Message string: " + new String(message.getContent()));
Log.i(TAG, "Message namespaced type: " + message.getNamespace() +
"/" + message.getType());
}
...
};我的问题是:
在上面的代码中,解析的消息是一个字符串,所以处理起来很简单,我认为,在我的例子中,我必须接收卡片和优惠券,这样就可以得到图片。如何处理和解析接收到的图片?
发布于 2016-05-22 17:39:57
任意数据的带有附近APIs的信标附件仅限于1024字节。,通常是Base64编码作为字符串存储。理论上,您可以使用二进制图像,Base64对它们进行编码,并将它们作为附件存储,但是图像必须是1024字节或更小(不包括Base64编码开销)。的底线是:附件不能传输大图像。
一个典型的替代方法是将图像放在公共URL上的web服务器上,并将URL存储在附件中。然后,在上面的onFound()方法中编写代码,启动一个后台线程,用HTTP获取图像。一旦返回,您就可以显示图像。你可以看到这里是一个获取图像的例子。
当然,--这需要网络访问来运行,但是附近的API确实需要这样做,否则就不可能从谷歌的云服务器上获取附件。
https://stackoverflow.com/questions/37375172
复制相似问题