2014-11-18 3 views
1

У меня есть учебный проект, где я должен сделать приложение для Android, чтобы реализовать дистанционное совместное использование файлов P2P на основе расстояния. В этом задействованы три устройства: одно - это устройство для запроса файла (скажем, A), а два устройства имеют файл (скажем, B & C). Устройство A следует загрузить с устройства B или C, которое ближе всего к нему (скажем, B ближе). Всякий раз, когда B удаляется от A, так что его расстояние от A больше, чем d (A, C), A должен подключиться к C и возобновить загрузку там, где он отключился от B. До сих пор я могу реализовать дистанционное совместное использование файлов часть (путем установки порогов расстояния). Но я понятия не имею, как реализовать возобновление загрузки.Android Wifi Direct - удаленный доступ к файлу P2P

ответ

0

Смотрите этот ответ: Implement pause/resume in file downloading

Он предназначен для загрузки с помощью HTTP, но вы можете использовать те же принципы и изменить его в соответствии с случаем использования.

В принципе, вам нужно отслеживать, сколько байтов вы уже прочитали. Когда вы подключаетесь к новому источнику загрузки, приостановите загрузку и отправьте текущий счетчик байтов на новое устройство. Это устройство может затем ответить, начиная с соответствующей точки, и передать оставшуюся часть байтов.

Возможно, вы захотите использовать RandomAccessFile, чтобы разрешить поиск позиций байтов во время операций.

+0

Спасибо, Джастин. Это звучит хорошо. Я попытаюсь его реализовать. – user2958428

 Смежные вопросы

  • Нет связанных вопросов^_^