Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Episodes are streamed even when downloaded locally (possibly SD card, Android 11 related) #1283

Closed
mitchdowney opened this issue Oct 1, 2022 · 16 comments
Assignees
Labels
bug Something isn't working needs reproduction Steps to reproduce the issue are needed for work to continue

Comments

@mitchdowney
Copy link
Member

mitchdowney commented Oct 1, 2022

This is a continuation of the issue that was created in our F-Droid repo: podverse/podverse-fdroid#51

(We consolidate all mobile app Github issues into this podverse-rn repo)

@trev-dev
Copy link

trev-dev commented Oct 2, 2022

Hello! Thanks for looking into this.

Using Podverse 4.6.8 on a Motorolla G Power 2020 (XT2041-4) running Android 11

@mitchdowney mitchdowney self-assigned this Oct 12, 2022
@mitchdowney
Copy link
Member Author

I'm not able to reproduce this issue on iOS...it seems to be playing downloaded episodes. Will try Android next.

@mitchdowney
Copy link
Member Author

mitchdowney commented Oct 13, 2022

@trev-dev I was not able to reproduce this issue on Android for Google Play or F-Droid either...I tested with v4.6.9, but I don't think there was a fix between v4.6.8 and 4.6.9 that could explain this...

@trev-dev I know you said that you already deleted and reinstalled the app, but could you try wiping the app data first from within Android app storage settings, then deleting and reinstalling the app? We did have a storage migration issue between 4.5.x and 4.6.x that broke a lot of functionality for Android users.

Also, was there a specific podcast or episode you were listening to when you had the issue? One theory I have is that the hashed file name we are saving is too long, which would cause saving the file to storage to fail. We have a limit on the hash length which we thought was safe for all platforms...but maybe the length we chose does not work universally like we hoped. https://github.com/podverse/podverse-rn/blob/develop/src/lib/hash.ts#L15

I'm going to mark this ticket as needs reproduction. I'm at a loss at the moment for how to diagnose and debug this...if anyone can help with steps to reproduce or provide some advice on how to debug this would be a top priority for me to fix.

Update: I tested with Android 13, so maybe this is specific to Android 11 and below?

@mitchdowney mitchdowney added the needs reproduction Steps to reproduce the issue are needed for work to continue label Oct 13, 2022
@mitchdowney
Copy link
Member Author

Possibly (likely) a duplicate of #1314

@mitchdowney
Copy link
Member Author

@trev-dev this Stack Overflow answer recommends using 127 characters as a max file name...but the answer is from 2013.

I'd try just changing our hash helper to limit to 127 characters...but I think that might break downloaded file references currently on people's devices. If we can confirm that file name character limit is actually the issue, then I could work on migrating to the reduced length file name hash.

@trev-dev
Copy link

I know you said that you already deleted and reinstalled the app, but could you try wiping the app data first from within Android app storage settings, then deleting and reinstalling the app? We did have a storage migration issue between 4.5.x and 4.6.x that broke a lot of functionality for Android users.

Not a problem. I wiped out the app, re-installed, re logged-in, re-setup my downloads folder on my SD card. I then made damn sure all the episodes I queue'd were pre-downloaded before going for a walk today. The app used ~200Mb of data. I'm actually over my data limit for the month now, so no more testing until november :/

How may I get you a manifest of my shows?

@trev-dev
Copy link

Ok so update: I turned mobile data off and went for a walk. After my episode ran out of buffer the player stopped.

I tried to resume and it would not work.

I reloaded the app, still won't work.

Cleared the cache, no dice.

The app is smart enough to only show me downloaded episodes bit when I try to play one, it circles and shows a red warning sign.

This unfortunately makes Podverse useless for me.

I will keep my subscription for a while just in case this gets sorted. I will be moving on to something that will play over the several hours of chores I need to do

@mitchdowney
Copy link
Member Author

@trev-dev thanks for your thorough testing and detailed report, and sorry again for the trouble :[

Ok there are 2 variables I have not tested recently with downloaded episode playback 1) Android 11 and below, and 2) SD card playback.

I'll try to install Android 11 on a device with an SD card and do some debugging.

@mitchdowney
Copy link
Member Author

I still haven't been able to reproduce this issue. I'm wondering if it could be related to device settings rather than app logic (check if storage is enabled for the app in device settings?).

We actually haven't had other reports of this issue to my knowledge. I'm sorry @trev-dev ,while it's a huge disappointment for your use-case, I'm going to de-prioritize it (unassign me) because I can't actually work on it until I can reproduce the issue.

@mitchdowney mitchdowney removed their assignment Dec 27, 2022
@trev-dev
Copy link

I of course haven't been using the app. I've given podverse full privilege to use data/power as it needs to. I have re-installed the app and will attempt to use it without SD card storage and report back here.

@trev-dev
Copy link

Update. I have stuck to my internal storage and avoided the use of my SD card. I cannot say for certain if it is the app, my cheap Motorolla device or the SD card itself that's causing issues, but my data usage is at a modest 28Mb after 2 hours of listing off my wifi network.

This may be unique to me at this point, but I recommend testing with SD card storage if you have not done so already. I can take Fountain off my phone now. Thanks!

@mitchdowney
Copy link
Member Author

@trev-dev thanks for the update!

I'm going to update the title of the issue since it sounds like we can narrow it down.

@mitchdowney mitchdowney changed the title Episodes are streamed even when downloaded locally Episodes are streamed even when downloaded locally (possibly SD card, Android 11 related) Dec 31, 2022
@mitchdowney mitchdowney self-assigned this Jan 22, 2023
@mitchdowney
Copy link
Member Author

Possibly related issues. Seems like a lot of problems with our Android 11 SD card handling @kreonjr

#1004
#1461
#1314
#1005

@mitchdowney
Copy link
Member Author

There is a long-shot chance this might be fixed in v4.12.0.

#1651

If it is isn't fixed, then it might be worth re-testing after #1611 is finished.

Unfortunately the SD card handling is still pretty mysterious to me...

@trev-dev
Copy link

trev-dev commented Feb 7, 2023

Just an FYI my phone started having other problematic behaviors such as freezing/restarting.

I fell back to my good ol' Blackberry Key 2 LE. The thing is stuck on Android 8. I stuck my same SD card in the blackberry, told Podverse to put my shows on said card. I have not had a problem with data usage for about a week.

@mitchdowney
Copy link
Member Author

mitchdowney commented Feb 7, 2023

@trev-dev sorry to hear about your phone, but glad to hear Podverse is working on Android 8! That is honestly a surprise to me lol.

There is one other major fix we need for Android stability. We're hitting a 6MB storage limit with podcast metadata we store on device, and when that happens it causes all kinds of chaos. Anyway if the problem resurfaces for you, one possibility is it's related to the 6MB limit. #1611

Since you're not running into the issue anymore I'll close it. If the bug happens again please let me know to reopen it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working needs reproduction Steps to reproduce the issue are needed for work to continue
Projects
None yet
Development

No branches or pull requests

2 participants