質問:
2kb未満のファイルを書き込むと、容量不足の問題が直接報告されます。retrofit2で要求されたファイルが使用されます。専門家の方は原因を究明する時間がありますか?
エラー レポートの詳細:
D/OkHttp: --> GET http://musicdata.baidu.com/da... http/1.1
D/OkHttp: <-- 200 OK http ://musicdata.baidu.com/da... (98ms、1877 バイトの本文)
D/ContentValues: onResponse: 歌詞ファイルのリクエストが成功しました
I/art: Thread[2,tid=3036,WaitingInMainSignalCatcherLoop] ,Thread*=0xae402000,peer=0x12c930a0,"Signal Catcher"]: シグナル 3
I/art に反応しています: スタック トレースを '/data/anr/traces.txt'
W/System.err に書き込みました: java.io.IOException: 書き込み失敗: ENOSPC (デバイスに空き領域がありません)
W/System.err: libcore.io.IoBridge.write(IoBridge.java:498)
W/System.err: java.io.FileOutputStream.write(FileOutputStream.java:186)
W/System.err: com.wang.mymusic.data.MusicData.lrcFile(MusicData.java:163)
W/System. err: com.wang.mymusic.data.MusicData.access$200(MusicData.java:40)
W/System.err: com.wang.mymusic.data.MusicData$3.onResponse(MusicData.java:123) )
W/System.err: Retrofit2.ExecutorCallAdapterFactory$ExecutorCallbackCall$1$1.run(ExecutorCallAdapterFactory.java:68)
W/System.err: android.os.Handler.handleCallback(Handler.java:739) )
W/System.err: android.os.Handler.dispatchMessage(Handler.java:95)
W/System.err: android.os.Looper.loop(Looper.java:148)
W/System.err: android.app.ActivityThread.main(ActivityThread.java:5417) で ##W/System.err: java.lang.reflect.Method.invoke(Native Method) で
W /System.err: com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
W/System.err: com.android.internal.os.ZygoteInit.main(ZygoteInit. java:616)
W/System.err: 原因: android.system.ErrnoException: 書き込み失敗: ENOSPC (デバイスに空き領域がありません)
W/System.err: libcore.io.Posix.writeBytes (ネイティブ メソッド)
W/System.err: libcore.io.Posix.write(Posix.java:271)
W/System.err: libcore.io.BlockGuardOs.write(BlockGuardOs.java: 313)
W/System.err: libcore.io.IoBridge.write(IoBridge.java:493)
W/System.err: ... 12 more
I/art: バックグラウンド部分同時実行マーク スイープ GC 解放 83995(3MB) AllocSpace オブジェクト、0(0B) LOS オブジェクト、12% 空き、27MB/31MB、一時停止 3.141ms 合計 131.690ms
I/art: バックグラウンド スティッキー同時マーク スイープ GC 解放 104777(4MB) AllocSpace オブジェクト、0(0B) LOS オブジェクト、0% 空き、34MB/34MB、一時停止 5.311ms 合計 163.136ms
//歌詞ファイルをディスクに保存
リーリー
while (fileread!= -1){
リーリーループを使用するのは間違っています。このループを if に変更する必要があります。