I have an academic project, where I have to make an android app to implement distance based wifi direct P2P file sharing. Three devices are involved in this - one is the file requesting device (say A) and two devices have the file (say B & C). Device A should download from a device B or C whichever is nearest to it (lets say B is nearer). Whenever B moves away from A, so that its distance from A is more than d(A,C), A should connect to C and resume the download where it got disconnected from B. Till now I am able to implement distance based file sharing part (by setting some distance thresholds). But I have no idea how to implement the download resuming thing.
Android Wifi Direct - Distance based P2P file sharing
590 views Asked by Avdhut Mankavale At
1
There are 1 answers
Related Questions in ANDROID
- Creating global Class holder
- Flutter + Dart: Editing name of a tab shows up a black screen
- android-pdf-viewer Received status code 401 from server: Unauthorized
- Sdk 34 WRITE_EXTERNAL_STORAGE not working
- ussd reader in Recket Native module
- Incorrect display of LinearGradientBrush in IOS
- The Binary Version Of its metadata is 1.8.0, expected Version is 1.6.0 build error
- I can't make TextInput to auto expand properly in Android
- Creating multiple instances of a class with different initializing values in Flutter
- How to create a lottie animation
- making android analyze with coverity sast tool
- Flutter plugin development android src not opening after opening example
- I initialize my ViewModel in the Activity with several fragments as tabs, but the fragments(tabs) return null for the updated livedata
- Node.js Server + Socket.IO + Android Mobile Applicatoin XHR Polling Error...?
- How I can use the shared preferences class?
Related Questions in WIFI-DIRECT
- Wifi direct (Wifi P2P) connection between raspberry pi 4b and android device only possible after reboot
- Does ESP32 support WiFi Direct?
- Can WiFi Direct be used with ESP32?
- In React Native using "react-native-wifi-p2p" this library,so startDiscoveringPeers method is working in debug mode but not working in release apk
- How to change the channel for android wifi-direct connection?
- is there any possible way to assign static ip address to android devices in wifi direct
- Local networking without an existing Wi-Fi or Internet connection
- Sending data device-to-device, Android or iOS agnostic with React Native
- Can i use rn-samsung-tv-remote to other TV by changing the logics?
- NetworkManager interfers with wpa_supplicant
- Wifi Direct discovery not working between two avds
- Brothers Android sdk not detecting wireless printers
- Button Click With Out this Screen Show Printing , Print using Wifi Printer ? Possible or Not
- Is there any way to do wifi provisioning using ble in flutter?
- Share files using Wifi Direct virtual adapter in C#
Related Questions in FILE-SHARING
- How to disable file sharing and enable printer sharing via configuring Windows 10 group policies?
- img src html tag not loading public image from public shared google driver folder
- Error "The directory name <path> is invalid" - Windows Service with Fileshare
- How can i change my fileserver, without changing the files path?
- Image not showing when sharing using the Flutter package share_plus
- Sharing excel sheet
- Share text string using expo-sharing
- Appscript not working in shared person id
- OpenReadAsync returns ex Access to the path is denied with sharing target xamarin ios
- UI Thread Hangs During Large File Transfers in P2P Websites
- in swift, is it possible somehow to drag a file into the File app or in other common place before my app is installed?
- Sharing a file between an Android app (with native component) and system services
- Generate Dropbox Direct Download Link (Old Method No More Working)
- Looking for a reputable open dataset for BitTorrent or other p2p file sharing networks
- How to create a public directory/folder on a plesk windows server?
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
See this answer: Implement pause/resume in file downloading
It is intended for download using HTTP, but you can use the same principles and modify it to fit your use case.
Basically, you need to keep track of how many bytes you've read so far. When you connect to a new download source, pause the download and send your current byte count to the new device. That device can then respond, starting from the appropriate point, and stream the remainder of the bytes.
You'll probably want to use RandomAccessFile to allow seeking between byte positions during your operations.