安卓客户端3.x版本,小米 澎湃os 无法下载文件

手机型号小米14
系统澎湃os2.0.207
测试了的版本包括3.0.18,3.0.16
可以查看图片

但所有要下载的如PDF,DOC等不行
怀疑是没有执行获得存储权限的动作。

2.x首次使用会要求获取存储权限,一切正常。

补充一些日志:


2025-10-02 22:39:20.370 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:39:20.371 D/SLog: MainActivity, onRestart
2025-10-02 22:39:20.420 D/SLog: FileSyncService, onStop()
2025-10-02 22:39:20.488 D/SLog: TabSettings2Fragment, cache size:
2025-10-02 22:39:20.489 D/SLog: TabSettings2Fragment, cache size:27 KB
2025-10-02 22:39:23.348 D/SLog: onCleared
2025-10-02 22:39:23.348 D/SLog: CompositeDisposable current size: 1
2025-10-02 22:39:23.348 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:39:23.352 D/SLog: onCleared
2025-10-02 22:39:23.352 D/SLog: CompositeDisposable current size: 15
2025-10-02 22:39:23.352 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:39:23.353 D/SLog: CompositeDisposable current size: 0
2025-10-02 22:39:23.353 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:39:23.353 D/SLog: onCleared
2025-10-02 22:39:23.353 D/SLog: CompositeDisposable current size: 1
2025-10-02 22:39:23.353 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:39:23.353 D/SLog: CompositeDisposable current size: 0
2025-10-02 22:39:23.353 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:39:23.353 D/SLog: onCleared
2025-10-02 22:39:23.353 D/SLog: CompositeDisposable current size: 4
2025-10-02 22:39:23.353 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:39:23.370 E/SLog: FileSyncService, onDestroy(), file monitor service destroy
2025-10-02 22:39:26.466 D/SLog: MainActivity, bond FileSyncService
2025-10-02 22:39:26.493 D/SLog: FileSyncService, startFolderMonitor(), backup path: /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:39:26.504 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:39:26.512 D/SLog: FileSyncService, onStop()
2025-10-02 22:39:26.560 D/SLog: getDirentsSingleFromServer(), The list has been inserted into the local database
2025-10-02 22:39:29.539 D/SLog: parse errorCode: 500, bodyString: <!DOCTYPE html>
<html lang="en">
<head>
    <title>Page unavailable</title>
</head>
<body>
    <h1>Page unavailable</h1>

    <p>Sorry, but the requested page is unavailable due to a server hiccup.</p>

    <p>Our engineers have been notified, so check back later.</p>
</body>
</html>

2025-10-02 22:39:29.539 E/SLog: ExceptionUtils, Failed to parse error body as ErrorModel JSON object.
2025-10-02 22:39:29.539 E/SLog: ExceptionUtils, Body: <!DOCTYPE html>
<html lang="en">
<head>
    <title>Page unavailable</title>
</head>
<body>
    <h1>Page unavailable</h1>

    <p>Sorry, but the requested page is unavailable due to a server hiccup.</p>

    <p>Our engineers have been notified, so check back later.</p>
</body>
</html>

2025-10-02 22:39:29.539 E/SLog: com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $
2025-10-02 22:39:29.634 D/SLog: onCleared
2025-10-02 22:39:29.634 D/SLog: CompositeDisposable current size: 1
2025-10-02 22:39:29.635 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:39:29.636 D/SLog: CompositeDisposable current size: 0
2025-10-02 22:39:29.636 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:39:29.638 D/SLog: getDirentsSingleFromServer(), The list has been inserted into the local database
2025-10-02 22:39:31.315 D/SLog: TabSettings2Fragment, cache size:
2025-10-02 22:39:31.315 D/SLog: TabSettings2Fragment, cache size:27 KB
2025-10-02 22:39:31.512 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:39:31.526 D/SLog: FileSyncService, onStop()
2025-10-02 22:39:36.528 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:39:36.549 D/SLog: FileSyncService, onStop()
2025-10-02 22:39:41.549 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:39:41.562 D/SLog: FileSyncService, onStop()
2025-10-02 22:41:15.367 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:41:15.393 D/SLog: MainActivity, onRestart
2025-10-02 22:41:15.446 D/SLog: FileSyncService, onStop()
2025-10-02 22:41:15.502 D/SLog: TabSettings2Fragment, cache size:
2025-10-02 22:41:15.502 D/SLog: TabSettings2Fragment, cache size:27 KB
2025-10-02 22:41:17.173 D/SLog: onCleared
2025-10-02 22:41:17.173 D/SLog: CompositeDisposable current size: 1
2025-10-02 22:41:17.173 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:41:17.175 D/SLog: onCleared
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable current size: 4
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable current size: 0
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:41:17.175 D/SLog: onCleared
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable current size: 1
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable current size: 0
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:41:17.175 D/SLog: onCleared
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable current size: 4
2025-10-02 22:41:17.175 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:41:17.214 E/SLog: FileSyncService, onDestroy(), file monitor service destroy
2025-10-02 22:41:17.768 D/SLog: MainActivity, bond FileSyncService
2025-10-02 22:41:17.803 D/SLog: FileSyncService, startFolderMonitor(), backup path: /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:41:17.823 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:41:17.830 D/SLog: FileSyncService, onStop()
2025-10-02 22:41:17.910 D/SLog: getDirentsSingleFromServer(), The list has been inserted into the local database
2025-10-02 22:41:20.400 D/SLog: CompositeDisposable current size: 2
2025-10-02 22:41:20.400 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:41:21.805 D/SLog: getDirentsSingleFromServer(), The list has been inserted into the local database
2025-10-02 22:41:22.830 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:41:22.851 D/SLog: FileSyncService, onStop()
2025-10-02 22:41:23.011 D/SLog: getDirentsSingleFromServer(), The list has been inserted into the local database
2025-10-02 22:41:24.771 D/SLog: CompositeDisposable current size: 5
2025-10-02 22:41:24.772 D/SLog: CompositeDisposable clear all: 0
2025-10-02 22:41:24.781 D/SLog: ScrollState{index=-1, top=0}
2025-10-02 22:41:27.852 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-02 22:41:27.868 D/SLog: FileSyncService, onStop()
2025-10-02 22:41:27.993 D/SLog: ScrollState{index=13, top=-156}
2025-10-02 22:41:28.626 D/SLog: PhotoFragment, getFileDetail(), /000各类临时存档/000000/微信图片_20210811114948.jpg
2025-10-02 22:41:29.406 D/SLog: media store:newVersion -> 1408:bb4f95f7-a73b-478e-be4c-cdb0ea2a5337, lastVersion -> null
2025-10-02 22:41:29.407 D/SLog: A new file is detected and the Media task begins
2025-10-02 22:41:29.407 D/SLog: FileSyncService, onMediaContentObserver, isFullScan: true
2025-10-02 22:41:29.407 D/SLog: MainActivity, onMediaContentObserver, isFullScan: true
2025-10-02 22:41:29.407 D/SLog: CameraUploadManager, performSyncByStatus()
2025-10-02 22:41:29.432 D/SLog: CameraSyncService, onCreate
2025-10-02 22:41:29.433 D/SLog: AlbumBackupAdapter, onPerformSync(),  isFullScan = true
2025-10-02 22:41:29.436 D/SLog: AlbumBackupAdapter, onPerformSync(), backup switch is off
2025-10-02 22:41:29.500 D/SLog: PhotoFragment, /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile/*************************/00工作_7a15/000各类临时存档/000000/微信图片_20210420145231.jpg
2025-10-02 22:41:29.516 D/SLog: PhotoFragment, getDownloadSingle(), download file error -> contentLength is -1

我的手机也是小米澎湃系统,你是否在系统设置-应用权限设置中,开启 seafile 读写文件的权限?

发现可能是权限的问题后,手工打开了“照片和视频”这个的权限,重启进入,也不行。所以很奇怪。
而且还尝试了卸载重装等办法,也没搞定。

我是 seafile 3.0.18 版本,手机红米 澎湃os 2.0.5.0 版本,可以下载查看 PDF DOC 等文件。这个就让专业的安卓开发看一下你的具体日志吧。

2025-10-02 22:39:26.560 D/SLog: getDirentsSingleFromServer(), The list has been inserted into the local database
2025-10-02 22:39:29.539 D/SLog: parse errorCode: 500, bodyString: <!DOCTYPE html>
<html lang="en">
<head>
    <title>Page unavailable</title>
</head>
<body>
    <h1>Page unavailable</h1>

    <p>Sorry, but the requested page is unavailable due to a server hiccup.</p>

    <p>Our engineers have been notified, so check back later.</p>
</body>
</html>

服务端的获取文件列表接口返回了 500 响应码。可以先看一下服务端的错误日志。

我想到了一个可能的原因,我因为配置不知道哪里不对所以没有使用自带的Caddy往出反代,而是直接将:8000反代了出来,但目前网页,pc,sea driver,安卓2.x版本的都正常,就觉得不是服务器配置的问题。
所以难道是这个原因?

2025-10-18 23:31:22已经配置的可以通过caddy访问。但仍然是相同的问题,最新日志,


2025-10-18 23:35:07.631 D/SLog: ScrollState{index=0, top=0}
2025-10-18 23:35:07.930 E/SLog: java.lang.RuntimeException: java.security.cert.CertificateException
2025-10-18 23:35:09.326 D/SLog: ScrollState{index=0, top=0}
2025-10-18 23:35:09.617 E/SLog: java.lang.RuntimeException: java.security.cert.CertificateException
2025-10-18 23:35:10.834 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-18 23:35:10.839 D/SLog: FileSyncService, onStop()
2025-10-18 23:35:12.297 D/SLog: TabSettings2Fragment, cache size:
2025-10-18 23:35:12.297 D/SLog: TabSettings2Fragment, cache size:21 KB
2025-10-18 23:35:12.368 E/SLog: javax.net.ssl.SSLHandshakeException: java.lang.RuntimeException: java.security.cert.CertificateException
2025-10-18 23:35:15.198 D/SLog: SeafileProvider, queryRoots()
2025-10-18 23:35:15.204 D/SLog: SeafileProvider, includeRoot(), docId = fi
2025-10-18 23:35:15.204 D/SLog: SeafileProvider, includeRoot(), rootId = filxxxxxxx.com::::root-magic-repo
2025-10-18 23:35:15.840 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-18 23:35:15.847 D/SLog: FileSyncService, onStop()
2025-10-18 23:35:20.848 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-18 23:35:20.856 D/SLog: FileSyncService, onStop()
2025-10-18 23:35:25.857 D/SLog: FileSyncService, onStart(), /storage/emulated/0/Android/media/com.seafile.seadroid2/Seafile
2025-10-18 23:35:25.869 D/SLog: FileSyncService, onStop()

另外,app加载的时候会提示不受信任的证书。

我用的是个多域名证书,第一个域名不是服务器要用的,所以app会报错,我觉得这也算个bug吧。