TeamAmaze / TeamAmaze/AmazeFileManager
SMB with user/pass never worked (for me) at any version | Crash in an old tablet
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 6.4k
- Forks
- 1.7k
- Avg merge
- 3d 9h
- Merged PRs (30d)
- 1
Description
Hello.
I will need to modify the issue template a little bit to explain this, because i was testing Amaze for something and the i realized that the issue is bigger than i thought (in fact, seems they are two but one lead me to the another). In the end is a summary, meanwhile the rest in entering in details.
First, a little bit of context. I was trying to use Amaze in an old tablet that i mostly use to play music and play some old games, it's very old, i uses Android 4.1.1, but because it's easier than copy via USB, i was looking to copy throw the lan with SMB some files from time to time, i was thinking to use Amaze because it's still can use in 4.x (it said that in Google Play) so i tried.
So, when i tried to create a SMB connection:
- Open Amaze
- "+" Button
- Cloud Connection
- SMB Connection
- Custom IP (It doesn't found anything in the auto search, i will point that out later)
- Put Name/IP/Name and Password (If needed, i will explain that later)
- Push "Create".
And It simply crash:
Crash log for Amaze 3.6.7 in the Android 4.1.1 tablet
- App Name: Administrador de Archivos Amaze
- Package: com.amaze.filemanager
- Version: 3.6.7
- User Action: UI Error
- Request: Application crash
- OS: Linux Android 4.1.1 - 16
- Device: wmid
- Model: WM8850-mid
- Product: wmid
java.lang.NullPointerException: The callable returned a null value
at io.reactivex.internal.functions.ObjectHelper.requireNonNull(ObjectHelper.java:39)
at io.reactivex.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:44)
at io.reactivex.Single.subscribe(Single.java:3603)
at io.reactivex.internal.operators.single.SingleSubscribeOn$SubscribeOnObserver.run(SingleSubscribeOn.java:89)
at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
at java.util.concurrent.FutureTask.run(FutureTask.java:137)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:150)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:264)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
at java.lang.Thread.run(Thread.java:856)
So, i was thinking, ok it's a very old tablet, it's normal that it doesn't work anymore (the stock browser doesn't work anymore because some SSL thing...) so maybe is related to that and there isn't anything to do here to fix it. So i was to write here to think to drop at least 4.x and 4.1.x compatibility, or maybe the crash can be catched and show an message that thing doesn't work anymore in that old Android, because the normal file browser works fine and for some old things that still are somewhere can be useful.
But then i tried something more: I tested some Amaze old versions to see when it works and i can use SMB in that Android. For that i tested these ones:
- 3.6.7: Like i said before, it crash (crash log and logcat): AN10GD3_Amaze367_Crash.txt and AN10GD3_alogcat_Amaze367.txt.
- 3.5.3: It crash, and the crash is exactly the same as with 3.6.7.
- 3.4.3: It doesn't crash, but i can't connect to a SMB server with user and password. It works with one without them: AN10GD3_alogcat_Amaze343.txt
- 3.3.4: Same as 3.4.3: AN10GD3_alogcat_Amaze334.txt
- 3.2.2: Same as 3.4.3 and 3.3.4, but this time appears a message when it tries to connect saying "Logon failure: unknown user name or bad password": AN10GD3_alogcat_Amaze322.txt
- 3.1.2rc1: Same as 3.2.2: AN10GD3_alogcat_Amaze312rc1.txt
- 3.1.1: Same as 3.2.2 and 3.1.2rc1, but also it finds my computers instantly, when all the above versions doesn't find anything automatically (In the window where you can select to use the custom IP): AN10GD3_alogcat_Amaze311.txt
So, with ANY of them i cannot connect to a SMB share with user and password, but i can to one without them, and after 3.5.x, it directly crash. Also, it didn't auto find the computers in my network above 3.1.
So then i need to point this out: I can use Samba shares in the tablet with VLC 3.0.13 and Ghost Commander 1.60a1, both are older versions because they doesn't update anymore for this tablet's Android version, but they work and i use the same IP/Share/User/Password in all of them, so other things works, the config is right and it's not the tablet hardware itself (and any of them are as old as Amaze 3.1).
But the crash for sure seems to be because the tablet is pretty old. So, i did a test with my Xiaomi Mi 9 Lite (Android 10) with Amaze 3.6.7: It didn't crash, but still i can't connect to my SMB share with user and password, but i can to one without any. So, i did the same test to see if there is something different:
- 3.6.7: I can connect to a SMB share without user/password, but It can't with one with Mi9Lite_logcat_Amaze367.txt. It throws a message not very informative in spanish (Ups, something went wrong!)

- 3.5.3: Same as 3.6.7 Mi9Lite_logcat_Amaze353.txt
- 3.4.3: The behaviour is the same as 3.5.3 and 3.6.7 (SMB share without user/pass works, with doesn't), but there isn't any message. In fact normally it keeps like "loading" the folder, but not going anywhere. Mi9Lite_logcat_Amaze343.txt
- 3.3.4: Same as 3.4.3. Mi9Lite_logcat_Amaze334.txt
- 3.2.2: The behaviour is the same (SMB share without user/pass works, with doesn't) Mi9Lite_logcat_Amaze322.txt, but appears again a message, this time the same as with the tablet in this version: "Logon failure: unknown user name or bad password".

- 3.1.1: The behaviour is the same as 3.2.2, but also auto finds the computer in my network, but like i said i can't connect to shares with user and password. Mi9Lite_logcat_Amaze311.txt
So, in short, in a newer device that should work it does the same thing as the old tablet except the crash since 3.5.3. I need to point out also that in that Xiaomi i use CX Explorer, VLC and SyncMe Wireless (all lastest versions) to browse in my samba shares without any issues and using the same configuration i used to config all versions of Amaze.
Other detail i need to adress is that my user name has a space in it. I say this because i search here and in the past there where issues with passwords with spaces or other characters, and maybe is simply as that. Besides that i don't recall anything that can be an obvious issue, and like i said, other apps works with both devices.
Summarizing
- In an old tablet (Android 4.1.1) with Amaze 3.5.3 and 3.6.7, when trying to create a new samba share, Amaze crashs. It can (should) be because it's an old Android, so maybe is needed to update the minimum requeriments for Amaze, or can be handle that crash to avoid it because every other thing in the file browser works (at least the basic things), or maybe it's something that can be fixed, i don't know.
- In that old tablet (Android 4.1.1) and in a newer device (Xiaomi Mi 9 Lite / Android 10), i can't connect to any share with user and password, but i can to one without them. That is tested not only with the last version of Amaze at this point (3.6.7), but also i tested this with 3.5.3, 3.4.3, 3.3.4, 3.2.2 and 3.1.1, all of them with that same result in both devices.
- Also, in both devices, the auto search for samba devices in the network works in 3.1.1, but not in any of the others newer versions than that. They didn't find anything and the only way is to put the ip manually.
Also to say that the crash log was create for Amaze, the logs in the old tablet with aLogcat ROOT and in the Xiaomi device with Logs (both filtered with the keyword "Amaze").
Sorry for the text bulk, but i don't think i can explain this better than this way.
Thanks!
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the attached crash logs and the SMB behavior reported across Amaze versions 3.1.1 through 3.6.7 on Android 4.1.1 and Android 10. Compare the authenticated-share, device-discovery, and Android 4.1.1 crash paths. Done means authenticated SMB shares work or fail with a useful error, discovery behavior is understood, and creating a connection no longer crashes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile, networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100