https://github.com/google/samba-documents-provider
Access network file shares directly from the Android Downloads/Files app
https://github.com/google/samba-documents-provider
android-application libsmbclient
Last synced: 10 months ago
JSON representation
Access network file shares directly from the Android Downloads/Files app
- Host: GitHub
- URL: https://github.com/google/samba-documents-provider
- Owner: google
- License: gpl-3.0
- Archived: true
- Created: 2017-06-19T17:23:47.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2020-05-23T01:42:03.000Z (about 6 years ago)
- Last Synced: 2025-09-18T00:45:12.778Z (10 months ago)
- Topics: android-application, libsmbclient
- Language: Java
- Homepage:
- Size: 229 KB
- Stars: 665
- Watchers: 33
- Forks: 125
- Open Issues: 33
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- awesome-twilight0 - google/samba-documents-provider - Access network file shares directly from the Android Downloads/Files app (others)
README
# Samba Documents Provider
## Overview
This is an Android app that extends the built in File Manager to support connecting to SMB
file shares.
This app is built on top of Samba 4.5.1.
## Setup
### Prerequisite
Android SDK and NDK r15b or above are required to build this app. Android Studio is highly
recommended.
This build guide is only tested on Ubuntu. Changes to make it build on other platforms are
welcome.
### Build Steps
1. Download and unarchive Samba 4.5.1 [source code][samba-source].
2. Change directory to the root of Samba source code.
3. Create a git repository.
4. Run `git apply /sambapatch.diff`.
5. Modify configure.sh to change $NDK to point to your NDK folder.
6. Uncomment corresponding flags in configure.sh to compile for different architecture.
Uncomment flags for ARMv7 in addition to 32-bit ARM to compile it for ARMv7.
7. Run `configure.sh` to configure Samba project.
8. Run `compile.sh` to compile libsmbclient.so.
9. Run `install.sh /app/src/main/jniLibs/`.
10. Change directory to SambaDocumentsProvider source code.
11. Run `mv app/src/main/jniLibs//includes app/src/main/cpp/samba_includes`.
12. Change directory to the root of Samba source code and run `make distclean`.
13. Repeat step 6-12 for all desired ABI's.
14. Make sure to change app's `build.gradle` to include only ABI's that Samba was built
for in previous steps.
15. Compile SambaDocumentsProvider.
## Discussion
Please go to our [Google group][discussion] to discuss any issues.
[samba-source]: https://download.samba.org/pub/samba/stable/samba-4.5.1.tar.gz
[discussion]: https://groups.google.com/forum/#!forum/samba-documents-provider