我想将图像作为字符串保存到Firebase。为此,我将其编码为Base64字符串。
对于较小的图像,一切正常(例如,15128个字符串可以),但对于较大的图像,我会得到例外。
这里是堆栈跟踪,这个图像是在Base64编码后编码的34807个字符:
07-10 09:45:38.414 879-896/com.firebase.androidchat E/DefaultRunLoop: Uncaught exception in Firebase runloop. Please report to support@firebase.com
java.lang.StringIndexOutOfBoundsException: length=34807; regionStart=32768; regionLength=16384
at java.lang.String.startEndAndLength(String.java:583)
at java.lang.String.substring(String.java:1464)
at com.firebase.client.utilities.Utilities.splitIntoFrames(Utilities.java:85)
at com.firebase.client.realtime.WebsocketConnection.send(WebsocketConnection.java:159)
at com.firebase.client.realtime.Connection.sendData(Connection.java:200)
at com.firebase.client.realtime.Connection.sendRequest(Connection.java:89)
at com.firebase.client.core.PersistentConnection.sendAction(PersistentConnection.java:744)
at com.firebase.client.core.PersistentConnection.sendPut(PersistentConnection.java:697)
at com.firebase.client.core.PersistentConnection.putInternal(PersistentConnection.java:684)
at com.firebase.client.core.PersistentConnection.put(PersistentConnection.java:307)
at com.firebase.client.core.PersistentConnection.put(PersistentConnection.java:303)
at com.firebase.client.core.Repo.setValue(Repo.java:215)
at com.firebase.client.Firebase$1.run(Firebase.java:427)
我是否达到了允许的最大Firebase字符串大小,还是Android SDK中的错误?任何解决方法?
答案 0 :(得分:1)
Firebase dev在这里。最新版本的SDK(v1.0.2)应该可以解决这个问题。你可以尝试一下,让我知道它是否已经解决了?
答案 1 :(得分:0)
这只是gradle文件的较旧版本的Firebase数据库依赖性问题,只需将其更新为最新版本... 就是这样