从Firebase读取文本文件-应用程序崩溃

时间:2018-12-29 12:03:17

标签: java android firebase url text

我在 Firebase存储中有一个txt文件。而且我有它的网址(var test)。

try {
String test = "https://firebasestorage.googleapis.com/v0/b/unspecific-e3a2c.appspot.com/o/userBackups%2F7UBZgrChOqNWMOMKNXcVnUK3s972%2FbackupFavs.txt?alt=media&token=c3841b59-325f-4950-9f76-b6776a65c4fa";
URL url = new URL(test);
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String str;
while ((str = in.readLine()) != null) {
    // str is one line of text; readLine() strips the newline character(s)
}
in.close();
} catch (MalformedURLException e) {
} catch (IOException e) {
}

我将使用BufferedReader读取此文件。但是在BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));行中,我的应用程序崩溃了。

日志:

android.os.NetworkOnMainThreadException
    at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1303)
    at com.android.org.conscrypt.Platform.blockGuardOnNetwork(Platform.java:300)
    at com.android.org.conscrypt.OpenSSLSocketImpl$SSLOutputStream.write(OpenSSLSocketImpl.java:808)
    at com.android.okhttp.okio.Okio$1.write(Okio.java:76)
    at com.android.okhttp.okio.AsyncTimeout$1.write(AsyncTimeout.java:155)
    at com.android.okhttp.okio.RealBufferedSink.flush(RealBufferedSink.java:221)
    at com.android.okhttp.internal.http.HttpConnection.flush(HttpConnection.java:141)
    at com.android.okhttp.internal.http.HttpTransport.finishRequest(HttpTransport.java:52)
    at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:904)
    at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:782)
    at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:463)
    at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:405)
    at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:243)
    at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210)
    at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java)
    at java.net.URL.openStream(URL.java:1057)
    at ru.unspecific.uccdibd.Backup.restoreFavs(Backup.java:215)
    at ru.unspecific.uccdibd.Backup.access$400(Backup.java:74)
    at ru.unspecific.uccdibd.Backup$3.onClick(Backup.java:168)
    at android.view.View.performClick(View.java:5610)
    at android.view.View$PerformClick.run(View.java:22265)
    at android.os.Handler.handleCallback(Handler.java:751)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:154)
    at android.app.ActivityThread.main(ActivityThread.java:6077)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)

请帮助我修复它。

0 个答案:

没有答案