Appareil Android correspondant à la programmation de socket


Dans cet article, je voudrais présenter le concept de socket et me concentrer sur la façon d’utiliser la programmation de socket pour se compose de 2 appareils Android distincts se connectant.

Jetons d’abord un coup d’œil au concept de «socket».

Quand nous disons socket, un morceau de matériel prend vie dans nos boîtiers d’ordinateurs. Cependant, le socket est une structure qui permet à l’ordinateur de communiquer avec d’autres ordinateurs sur le réseau. Mais nous avons besoin de quelques adresses pour y arriver. Cette adresse appelle comme l’adresse IP de notre ordinateur.

L’adresse IP nous permet de déterminer avec quel ordinateur communiquer. Lorsque nous atteindrons l’ordinateur avec lequel nous communiquerons, nous devons spécifier le programme que nous contacterons. Ici, les ports de notre ordinateur entrent en jeu.

Ça signifie; les deux ordinateurs communiquent entre eux à travers à la adresse IP et Port. La structure que nous appellerons et parlerons du Socket se compose de l’adresse IP et du port binaire. En d’autres termes, la prise n’est pas un élément matériel qui est dans l’esprit de tout le monde; Il s’agit d’une structure composée d’adresses IP et de numéros de port.

Il y a plusieurs prises sur nos ordinateurs. Il existe différents ports sur notre ordinateur pour chaque programme basé sur socket.

Comme exemple,

1) Les serveurs FTP utilisent et communiquent sur le port 21
2) Les serveurs TELNET utilisent et communiquent sur le port 23.

Je vais montrer consiste à prendre les nombres que le client transmet au serveur en mettant le serveur au carré et en le transmettant à nouveau au client. Eh bien, si vous demandez ce qu’est le client et le serveur, expliquons ces deux termes comme suit;

Le client est un processeur qui demande un service dans des programmes de socket. Lorsqu’il le souhaite, il se connecte au serveur et fait la demande et obtient la réponse de retour et peut le déconnecter quand il le souhaite.

Serveur, d’autre part, est le serveur servant dans les programmes de socket. Lorsque le client souhaite se connecter au serveur, le serveur est toujours activé pour se connecter et le client doit surveiller le port auquel il se connectera.

Nous avons brièvement expliqué le socket, maintenant nous pouvons passer à la section Programmation du socket

Je crois que la meilleure façon d’apprendre de nouvelles techniques ou de nouveaux concepts est basée sur un didacticiel étape par étape. Dans cet article, vous devez avoir les bases de la programmation Java et Android.

Je vais donc vous expliquer les détails spécifiques et vous pouvez accéder au référentiel et au code source de l’application dans mon compte GitHub dans l’article ci-dessous.

Maintenant, mon objectif est d’expliquer comment connecter deux appareils Android à l’aide de la communication par socket, et plus tard dans la deuxième partie, nous verrons comment partager des fichiers / données entre deux appareils et créer une application comme Xender.

Si vous vous demandez l’application Xender, vous pouvez la vérifier sur ce lien ( http://web.xender.com/ )

Je vais vous présenter un exemple d’application. L’application consiste à prendre 2 appareils Android pour se connecter.

1) Tout d’abord, vous devez utiliser l’environnement Android Studio et créer un nouveau langage de sélection de projet en Java

créer un nouveau projet et sélectionner Java comme langue

2) Nous créerons deux boutons un pour l’envoi et un pour la réception des données comme ci-dessous

Il existe des guides d’utilisation sur la façon de l’utiliser et 2 boutons factices.

créer deux boutons

3) Une autorisation de localisation est requise avant de démarrer le service de point d’accès afin qu’un autre appareil puisse voir cet appareil grâce à la numérisation Wi-Fi

4) Ici, nous avons l’écran de confirmation d’autorisation

écran de confirmation d'autorisation

5) Une fois que l’utilisateur a cliqué sur le bouton d’envoi, nous allons créer un point d’accès local et afficher le mot de passe en code QR, afin qu’un utilisateur puisse numériser pour se connecter à un autre appareil.

Notez qu’il y a de petits changements entre les appareils ci-dessous Oreo et les autres

a) Sous Oreo, les appareils doivent créer un hotspot en utilisant WifiConfiguration comme ci-dessous

b) Pour Oreo et les appareils ci-dessus doivent utiliser startLocalOnlyHotspot comme indiqué ci-dessous

6) Vous pouvez maintenant mettre SSID et Mot de passe dans l’objet JSON, puis générer QR Code en utilisant une chaîne. Un hotspot est actif écouter la demande de connexion entrante sur un port fixe en utilisant un serveur de socket comme ci-dessous

Pour générer un code QR, la bibliothèque QRGenerator a été utilisée et elle est générée comme indiqué ci-dessous.

Voici le résultat d’un appareil “serveur”. Et il est prêt à se connecter 🙂

écran prêt pour la connexion

7) Travaillons maintenant sur la partie récepteur.

Pour scanner le code QR, nous avons besoin de la permission de l’appareil photo, de la permission de localisation et du Wi-Fi pour scanner les appareils à proximité

écran d'autorisation pour autoriser l'application à prendre des photos et des vidéos

8) Après autorisation, il commencera à scanner les appareils en utilisant WifiManager getScanResults () méthode

Pulsator4droid est utilisé pour afficher les effets d’impulsion pendant le balayage. Utilisation mWifiManager.startScan () pour commencer la numérisation et mWifiManager.getScanResults () donnera une liste des appareils à proximité en rappel une fois la numérisation terminée.

À la capture d’écran ci-dessous, recherche de nouveaux appareils.

écran de recherche de nouveaux appareils

9) Une fois l’appareil détecté, il affichera le nom de l’appareil comme indiqué ci-dessous. Appuyez sur l’appareil pour vous connecter et cela ouvrira l’écran de numérisation QR, ajoutera un réseau à l’aide du SSID et du mot de passe, puis connectez-vous à la prise en utilisant l’IP du serveur connecté et le port fixe.

Pour numériser le QR Code ajouter QRCodeScanner dépendance et commencer l’analyse ajouter la ligne ci-dessous

Après la numérisation, obtenez SSDI et mot de passe pour vous connecter comme indiqué ci-dessous

écran d'application

10) Après avoir tapoté sur l’appareil, il affichera l’état de la connexion comme indiqué ci-dessous

Une fois qu’un appareil est connecté à un hotspot, connectez-vous à une prise pour envoyer des données à un autre appareil

écran de connexion

11) Une fois que le périphérique est connecté à un nom de périphérique d’affichage, envoyez le nom du modèle de périphérique à partir des périphériques et sur les données de socket reçues pour afficher le nom du périphérique

Maintenant, nous nous sommes connectés à l’appareil

12) Si vous souhaitez vous déconnecter de l’appareil, envoyez l’état de connexion faux et fermez le serveur comme indiqué ci-dessous

À la suite des étapes, nous voyons comment faire consiste à prendre 2 appareils Android pour se connecter ensemble.

Article suivant Je voudrais montrer comment envoyer des données entre deux appareils.

Crédits

Pulsator4Droid

QRGenearator

QRCodeScanner

Code source: https://github.com/omeryilmaz86/AndroidDataSharing.git

Close Menu