Je veux créer une application de partage de données sur Android en utilisant le wi-fi comme "SHAREit" mais je ne suis pas arrivé d'où je commence.
Donc, si quelqu'un me clarifie le concept technique de "SHAREit", il était très efficace à comprendre.
Veuillez toutes les ressources et les liens que j'ai pu exécuter pour tester.
Utilisez les Android Wi-Fi P2P, et commencez par le document sur cette page . Il vous indique comment utiliser le Wi-Fi P2P pour la découverte de services, ce qui prend soin de l'élément 1 dans vos besoins. Fondamentalement, chaque appareil transmet un DNS-SD TXT qui peut contenir des informations d'ID utilisateur, etc. Les appareils peuvent voir son contenu sans avoir à établir de socket, ce qui est ce que vous ferez plus tard pour accomplir le point 2 selon vos besoins.
J'ai essayé d'écrire une bibliothèque appelée SHAREthem pour simuler comment = SHAREit fonctionne. La bibliothèque facilite le partage de fichiers P2P et les transferts entre les appareils en utilisant Hotspot WiFi . Il prend également en charge l'application pour le partage Web si le récepteur n'a pas d'application installée. J'espère que cela vous aidera à comprendre les aspects techniques du partage de fichiers à l'aide du point d'accès WiFi.
Puisqu'il y a beaucoup de pièces mobiles dans cette bibliothèque, j'ai fait un blog avec les détails d'implémentation. J'essaierai de couvrir quelques composants ici:
HotspotController
HC utilise Java Reflection car il n'y a AUCUNE API disponible sur Android pour activer/désactiver les Hotspots. Les fonctionnalités incluent:
Le contrôleur crée une configuration de point d'accès Wi-Fi OUVERT avec un SSID qui peut être intercepté par les récepteurs pour reconnaître les expéditeurs SHARE, y compris les noms de port et d'expéditeur.
Restaure la configuration du point d'accès utilisateur lorsque le mode de partage est désactivé
Fournit une liste des clients WiFi connectés.
PARTAGEZ le serveur
Un minuscule serveur HTTP étendu à partir de NanoHttpd, sert les données de l'expéditeur aux récepteurs en utilisant l'adresse IP comme nom d'hôte et fonctionne sur le port attribué par l'utilisateur ou le système par défaut.
PARTAGEZ le service
Service Android qui gère le cycle de vie de SHAREthem-server et gère également les notifications de premier plan avec action d'arrêt.
UI (Activités)
Activités Android pour gérer les actions de partage/réception
Récepteur - fournit une interface utilisateur pour répertorier les fichiers disponibles à télécharger. Publie une demande de téléchargement sur Android Download Manager pour démarrer le téléchargement des fichiers.
Expéditeur - affiche les informations IP, Port et clients connectés ainsi que le statut de transfert de fichiers pour chaque client connecté (récepteur).