0
Under review

Can't play video in a nextcloud mobile app

rav_osu 4 months ago updated 4 months ago 3

Hi.

I'm using FileRun version 2019.12.25 with API on as a server, nginx LetsEncrypt SSL certificate.
Mobile app Nextcloud 3.12.0 (Jun 10,2020) from Market (I also tried 3.11 and earlier versions) on Samsung s9 Android 10 firmware G965FXXAETG3.
App connects fine but can't open video files (mp4) in a buildin player in both "@Home" and "@Shares" folders.
In the '@Home' folder (and sub-folders) I can play video in an external player (vlc for example).
But in the "@Shares" folder (and sub-folders) no video can be opened even with an external player.

I tried another file explorers with ownCloud connector (FE File Explorer, Smart File Manager) and they play video everywhere.

PS: I also opened an issue on Nextcloud github https://github.com/nextcloud/android/issues/6370

If you look at attached logcat files you will see a crash like this:
06-13 11:06:22.519 14368 14368 E AndroidRuntime: FATAL EXCEPTION: main
06-13 11:06:22.519 14368 14368 E AndroidRuntime: Process: com.ocloud24.android, PID: 14368
06-13 11:06:22.519 14368 14368 E AndroidRuntime: java.lang.RuntimeException: Unable to start receiver com.ocloud24.android.broadcastreceivers.BootupBroadcastReceiver: java.lang.IllegalStateException: Not allowed to start service Intent { act=com.ocloud24.android.services.observer.FileObserverService.action.START_OBSERVATION cmp=com.ocloud24.android/.services.observer.FileObserverService }: app is in background uid UidRecord{48f25b8 u0a307 RCVR idle change:uncached procs:1 proclist:14368, seq(0,0,0)}
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.app.ActivityThread.handleReceiver(ActivityThread.java:4038)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.app.ActivityThread.access$1500(ActivityThread.java:269)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2021)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:107)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.os.Looper.loop(Looper.java:237)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:7857)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1076)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: Caused by: java.lang.IllegalStateException: Not allowed to start service Intent { act=com.ocloud24.android.services.observer.FileObserverService.action.START_OBSERVATION cmp=com.ocloud24.android/.services.observer.FileObserverService }: app is in background uid UidRecord{48f25b8 u0a307 RCVR idle change:uncached procs:1 proclist:14368, seq(0,0,0)}
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.app.ContextImpl.startServiceCommon(ContextImpl.java:1688)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.app.ContextImpl.startService(ContextImpl.java:1633)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.content.ContextWrapper.startService(ContextWrapper.java:683)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.content.ContextWrapper.startService(ContextWrapper.java:683)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at com.ocloud24.android.services.observer.FileObserverService.initialize(FileObserverService.java:102)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at com.ocloud24.android.broadcastreceivers.BootupBroadcastReceiver.onReceive(BootupBroadcastReceiver.java:55)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: at android.app.ActivityThread.handleReceiver(ActivityThread.java:4029)
06-13 11:06:22.519 14368 14368 E AndroidRuntime: ... 8 more

Tried nextcloud app version 3.12.1 on my old Redmi 3S with android 6.0.1.

It also doesn't play videos from "@Shares" folder.

Digging logcat I found:

28394 08-03 23:30:31.458 7108 D RefreshFolderOperation Checking changes in NEXTCLOUDTOKEN3@rav5.ru/@Shares/(1) rav/(1) test3/
28395 08-03 23:30:31.460 7108 D OwnCloudClient #0 REQUEST PROPFIND /remote.php/webdav/%40Shares/(1)%20rav/(1)%20test3/
28401 08-03 23:30:31.554 7108 I RefreshFolderOperation Checked NEXTCLOUDTOKEN3@rav5.ru/@Shares/(1) rav/(1) test3/ : changed
28402 08-03 23:30:31.556 7108 D OwnCloudClient #0 REQUEST PROPFIND /remote.php/webdav/%40Shares/(1)%20rav/(1)%20test3/
28418 08-03 23:30:31.820 7108 I ReadFolderRemoteOperation Synchronized /@Shares/(1) rav/(1) test3/: Operation finished with HTTP status code 207 (success)
28419 08-03 23:30:31.820 7108 D RefreshFolderOperation Synchronizing NEXTCLOUDTOKEN3@rav5.ru/@Shares/(1) rav/(1) test3/
28426 08-03 23:30:31.837 7108 D RefreshFolderOperation Remote folder /@Shares/(1) rav/(1) test3/ changed - starting update of local data
28439 08-03 23:30:32.009 7108 D FileDataStorageManager Saving folder /@Shares/(1) rav/(1) test3/ with 23 children and 0 files to remove
28451 08-03 23:30:32.279 7108 D FileDataStorageManager Sending 24 operations to FileContentProvider
28452 08-03 23:30:32.279 7108 D FileContentProvider applying batch in provider com.owncloud.android.providers.FileContentProvider@32ceac1 (temporary: false)
28468 08-03 23:30:32.361 7108 D FileContentProvider applied batch in provider com.owncloud.android.providers.FileContentProvider@32ceac1
28484 08-03 23:30:32.426 7108 D RefreshFolderOperation Send broadcast com.owncloud.android.operations.RefreshFolderOperation.EVENT_SINGLE_FOLDER_CONTENTS_SYNCED
28486 08-03 23:30:32.432 7108 D FileDisplayActivity Received broadcast com.owncloud.android.operations.RefreshFolderOperation.EVENT_SINGLE_FOLDER_CONTENTS_SYNCED
28487 08-03 23:30:32.436 7108 D OwnCloudClient #0 REQUEST GET /ocs/v2.php/apps/files_sharing/api/v1/shares
28521 08-03 23:30:32.533 7108 W HttpMethodBase Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended.
28522 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser Error parsing response from server
28523 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser org.xmlpull.v1.XmlPullParserException: Unexpected token (position:TEXT {"ocs":{"meta":{...@1:75 in java.io.InputStreamReader@628dd38)
28524 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at org.kxml2.io.KXmlParser.next(KXmlParser.java:432)
28525 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at org.kxml2.io.KXmlParser.next(KXmlParser.java:313)
28526 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at org.kxml2.io.KXmlParser.nextTag(KXmlParser.java:2048)
28527 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at com.owncloud.android.lib.resources.shares.ShareXMLParser.parseXMLResponse(ShareXMLParser.java:160)
28528 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at com.owncloud.android.lib.resources.shares.ShareToRemoteOperationResultParser.parse(ShareToRemoteOperationResultParser.java:77)
28529 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at com.owncloud.android.lib.resources.shares.GetSharesForFileRemoteOperation.run(GetSharesForFileRemoteOperation.java:103)
28530 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at com.owncloud.android.lib.common.operations.RemoteOperation.execute(RemoteOperation.java:181)
28531 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at com.owncloud.android.operations.RefreshFolderOperation.refreshSharesForFolder(RefreshFolderOperation.java:609)
28532 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at com.owncloud.android.operations.RefreshFolderOperation.run(RefreshFolderOperation.java:249)
28533 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at com.owncloud.android.lib.common.operations.RemoteOperation.run(RemoteOperation.java:357)
28534 08-03 23:30:32.544 7108 E ShareToRemoteOperationResultParser at java.lang.Thread.run(Thread.java:818)
28535 08-03 23:30:32.544 7108 D RefreshFolderOperation Send broadcast com.owncloud.android.operations.RefreshFolderOperation.EVENT_SINGLE_FOLDER_SHARES_SYNCED
28573 08-03 23:30:32.831 7108 D FileDisplayActivity Setting progress visibility to true
28575 08-03 23:30:32.832 7108 D FileDisplayActivity Received broadcast com.owncloud.android.operations.RefreshFolderOperation.EVENT_SINGLE_FOLDER_SHARES_SYNCED
28617 08-03 23:30:33.192 7108 D FileDisplayActivity Setting progress visibility to false
29152 08-03 23:30:38.104 7108 I art Background partial concurrent mark sweep GC freed 39674(2MB) AllocSpace objects, 21(2MB) LOS objects, 35% free, 29MB/45MB, paused 4.595ms total 134.628ms
29154 08-03 23:30:38.107 7108 D ThumbnailsCacheManager generate thumbnail: 200016400018_276438.jpg URI: https://rav5.ru/index.php/apps/files/api/v1/thumbnail/256/256/%40Shares/(1)%20rav/(1)%20test3/200016400018_276438.jpg
29155 08-03 23:30:38.108 7108 D OwnCloudClient #0 REQUEST GET /index.php/apps/files/api/v1/thumbnail/256/256/%40Shares/(1)%20rav/(1)%20test3/200016400018_276438.jpg
29647 08-03 23:30:40.187 7108 D ThumbnailsCacheManager add thumbnail to cache: 200016400018_276438.jpg
29650 08-03 23:30:40.208 7108 D ThumbnailsCacheManager generate thumbnail: 200033300610_239523.jpg URI: https://rav5.ru/index.php/apps/files/api/v1/thumbnail/256/256/%40Shares/(1)%20rav/(1)%20test3/200033300610_239523.jpg
29651 08-03 23:30:40.209 7108 D OwnCloudClient #0 REQUEST GET /index.php/apps/files/api/v1/thumbnail/256/256/%40Shares/(1)%20rav/(1)%20test3/200033300610_239523.jpg
29698 08-03 23:30:40.800 7108 D ThumbnailsCacheManager add thumbnail to cache: 200033300610_239523.jpg
29700 08-03 23:30:40.829 7108 D ThumbnailsCacheManager generate thumbnail: 200067600891_122044.jpg URI: https://rav5.ru/index.php/apps/files/api/v1/thumbnail/256/256/%40Shares/(1)%20rav/(1)%20test3/200067600891_122044.jpg
29701 08-03 23:30:40.830 7108 D OwnCloudClient #0 REQUEST GET /index.php/apps/files/api/v1/thumbnail/256/256/%40Shares/(1)%20rav/(1)%20test3/200067600891_122044.jpg
29831 08-03 23:30:41.376 7108 D ThumbnailsCacheManager add thumbnail to cache: 200067600891_122044.jpg
29838 08-03 23:30:41.413 7108 D ThumbnailsCacheManager generate thumbnail: 200070200242_93496.jpg URI: https://rav5.ru/index.php/apps/files/api/v1/thumbnail/256/256/%40Shares/(1)%20rav/(1)%20test3/200070200242_93496.jpg
29839 08-03 23:30:41.413 7108 D OwnCloudClient #0 REQUEST GET /index.php/apps/files/api/v1/thumbnail/256/256/%40Shares/(1)%20rav/(1)%20test3/200070200242_93496.jpg
29919 08-03 23:30:41.837 7108 D ThumbnailsCacheManager add thumbnail to cache: 200070200242_93496.jpg
30477 08-03 23:30:45.264 7108 V PreviewMediaFragment onCreateView
30508 08-03 23:30:45.507 7108 V PreviewMediaFragment onActivityCreated
30509 08-03 23:30:45.511 7108 V PreviewMediaFragment onStart
30516 08-03 23:30:45.532 7108 V PreviewMediaFragment onResume

Under review

Can you download the files, or other type of files, from the same folder?

Yes I can download video files from the "Shares" folder and play downloaded files. But it's not what I wanted to do with large video files.