ADB sous Windows - Installer des APK a distance

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

ADB sous Windows - Installer des APK a distance

Message par cage »

Bonjour,
Si vous avez des appareils qui tournent sous Android, vous pouvez avoir envie d'installer des applications non disponibles dans le Google Play
Plusieurs solutions s'offrent a vous, notamment a l'aide d'une clé USB ou d'un gestionnaire de fichiers qui permet de vous connecter via Wifi a votre PC
L'autre solution nécessite d'installer le composant ADB sur votre PC
Le composant est fourni sous forme d'archive a décompresser ou vous le souhaitez.
Sur le SSD de 1To de mon PC, j'ai créé un dossier C:\Y que j'ai caché (attrib +h C:\Y) auquel j'ai attribué (au démarrage) la lettre Y:
J'ai créé ainsi un disque virtuel Y: dans lequel j'ai tous mes utilitaires et applications PB
Dans Y:\ j'ai créé les dossiers suivants:
Y:\ADB
Y:\ADB\APK
Le composant ADB est décompressé dans Y:\ADB et je dépose les paquets Android dans Y:\ADB\APK
En utilisant l'outil Windows "Propriétés système" (Win+R Ouvrir : sysdm.cpl) dans l'onglet Paramètres systèmes avancés
Cliquer sur Variables d'environnement... puis sur Path dans Variables système
Cliquer sur Modifier... puis sur Nouveau et ajouter Y:\ADB\ puis sur OK
L'utilitaire adb.exe peut-être utiliseé sans avoir a préciser où il se trouve.
J'ai développé une petite application qui ne paye pas de mine et qui me sert dès que je dois bricoler sur un équipement Android
Cette application fonctionne avec les box TV Android (testé avec Freebox Mini 4K et Freebox Pop) les chromebook , les tablettes et les smartphones.
Image
Au lancement de l'application, un fichier devices.txt est créé.
Il est pré-documenté avec les adresses IP de mes appareils (@IP associées aux @MAC dans le routeur de la freebox).
A vous de documenter les vôtres ou d'utiliser le menu ADB:Device/Documenter une adresse IP
Le choix du paquet a installer ce fait via le menu ADB:Paquet/Sélectionner un paquet
Les sources et les exécutables sont disponibles sur pbcage.free.fr Mes projets Purebasic/myadbctrl
La page du projet est juste une ébauche pour l'instant.
En espérant que vous y trouverez un certain intéret,
cage
+version v23.07.25
+version v23.07.26
Dernière modification par cage le mer. 26/juil./2023 21:18, modifié 1 fois.
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: ADB sous Windows - Installer des APK a distance

Message par Kwai chang caine »

Voilà un projet qui m'a l'air assez complet 8O
C'est vrai que ce petit ADB utilisé un peu partout comme dans B4A (Basic for Android) est vraiment une merveille 8)
Merci pour le partage
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: ADB sous Windows - Installer des APK a distance

Message par cage »

Bonsoir,

Une mise à jour de myadbctrl est disponible sur pbcage.free.fr

Ajouts de menus, légère refonte de l'interface, ajouts de constante pour paramétrer l'application a votre convenance, amélioration du code.

Paramètres sous forme de constantes a adapter a votre PC

Code : Tout sélectionner

;;; #editor$      = "notepad.exe"
#editor$          = "Y:\YH\TOOLS\NPP\notepad++.exe"
;
;;;#anlink        = "C:\Users\"+UserName()+"\appdata\roaming\anlink\anlink.exe"
#anlink$          = "shell:AppsFolder\ECOLINK.AnLink_6nqsq1n47svzt!ink.anl.AnLink"
;
#adbappcontrol$   = "Y:\ADB\ADBAppControl\ADBAppControl.exe"
;
#myphoneExplorer$ = "C:\Program Files (x86)\MyPhoneExplorer\MyPhoneExplorer.exe"
;
;;; #vysor$       = "C:\Users\"+UserName()+"\admin\AppData\Local\vysor\Vysor.exe"
#vysor$           = "Y:\ADB\Vysor\vysor.exe"
;
#source_apk$      = "Y:\ADB\APK\"
Image
A vous de jouer,
cage
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: ADB sous Windows - Installer des APK a distance

Message par cage »

@Kwai chang caine
Voilà un projet qui m'a l'air assez complet 8O
C'est vrai que ce petit ADB utilisé un peu partout comme dans B4A (Basic for Android) est vraiment une merveille 8)
Merci pour le partage
Merci a toi surtout d'avoir pris le temps de regarder.

La dernière version est plus évoluée et plus facile a customiser.
Des commandes adb peuvent êtres facilement ajoutées dans la procédure documenter_app_combo_gadget()

Code : Tout sélectionner

Procedure.a documenter_app_combo_gadget()
  ClearGadgetItems(#GadgetCombo)
  AddGadgetItem(#GadgetCombo, -1,"--------------- Sélectionnez une commande (* nécessite les droits admin) ---------------")
  AddGadgetItem(#GadgetCombo, -1,"arp -a")
  AddGadgetItem(#GadgetCombo, -1,"getmac /v /fo list")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /all")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /displaydns")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /flushdns")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /registerdns *")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /release")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /renew")
  AddGadgetItem(#GadgetCombo, -1,"net share")
  AddGadgetItem(#GadgetCombo, -1,"netstat -rn")
  AddGadgetItem(#GadgetCombo, -1,"ping %IP%")
  AddGadgetItem(#GadgetCombo, -1,"route print")
  AddGadgetItem(#GadgetCombo, -1,"set")
  AddGadgetItem(#GadgetCombo, -1,"PATH")
  AddGadgetItem(#GadgetCombo, -1,"----------------- ADB ---------------------------------------------------------------------")
  AddGadgetItem(#GadgetCombo, -1,"adb help           | affiche l'aide d'adb")
  AddGadgetItem(#GadgetCombo, -1,"adb version        | affiche la version d'adb")
  AddGadgetItem(#GadgetCombo, -1,"adb connect %IP%   | se connecte a l'adresse %IP%[:5555]")
  AddGadgetItem(#GadgetCombo, -1,"adb devices -l     | affiche la liste des appareils connectés")
  AddGadgetItem(#GadgetCombo, -1,"adb disconnect     | se déconnecte de l'adresse %IP%[:5555], ou de toutes")
  AddGadgetItem(#GadgetCombo, -1,"adb install %APK%  | installe le paquet %APK%")
  AddGadgetItem(#GadgetCombo, -1,"-------------------------------------------------------------------------------------------")
  AddGadgetItem(#GadgetCombo, -1,"")
  SetGadgetState(#GadgetCombo, 0)
EndProcedure
Chaque ligne est une commande qui est passée a la procédure lancer_programme(*Parameters.program)
Les premières lignes n'ont rien a voir avec adb, mais peuvent servir a vérifier la partie réseau local si on a un doute.
Tout ce qui se trouve après le pipe "|" est considéré comme du commentaire.
Il y a beaucoup de commandes adb, mais je me suis limité a l'installation d'un paquet (*.apk) depuis le PC vers l'équipement Android.
Je suis étonné par la facilité qu'offre adb pour installer des packages ou modifier certains paramètres avec la commande shell.

Si le cœur vous en dit, on peut améliorer l'application ensemble, toute idée étant la bienvenue.
Cage
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Re: ADB sous Windows - Installer des APK a distance

Message par Kwai chang caine »

Je suis étonné par la facilité qu'offre adb pour installer des packages ou modifier certains paramètres avec la commande shell.
Oui, je m'étais dit la même chose quand je l'avais découvert 8O
En plus portable, sans dépendance, gratuit...que demande le peuple

Fut une époque ....on aurait dit :

"Touti rikiki...Maouss costaud" :D

Image

Pour l'instant j'ai pas d'idées car je suis vraiment pas dans ce sujet pourtant vraiment intéressant, et il me parait déjà bien complet, mais sait on jamais :wink:
Par contre pour justement rester dans le sujet, je viens de découvrir sur le US que y'avait un protocole MTP qui s'occupe aussi (entre autre apparemment) de la connexion entre les téléphones et le PC sans utiliser ADB, ça fait une corde de plus à notre arc 8)
https://www.purebasic.fr/english/viewto ... 73#p604773

Encore merci de ton partage de tout ce travail 8)
ImageLe bonheur est une route...
Pas une destination

PureBasic Forum Officiel - Site PureBasic
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: ADB sous Windows - Installer des APK a distance

Message par cage »

Bonsoir Kwai chang caine,
J'avais vu le post sur le forum anglais et j'avais testé la fonctionnalité MTP
Elle est incomplète dans le sens ou toute les fonctionnalités ne sont pas implémentées.
Je suis arrivé a faire des choses avec un vieux smartphone Willeyfox et une vieille tablette Lenovo
Je remet ici le code légèrement modifié et commenté qui fonctionne pour moi.

Code : Tout sélectionner

;;; https://www.purebasic.fr/english/viewtopic.php?p=604773
;;; https://www.purebasic.fr/english/viewtopic.php?t=72815
;;; https://www.purebasic.fr/english/viewtopic.php?t=77556
;;;
;;; http://forums.purebasic.com/german/viewtopic.php?t=31465


EnableExplicit

SetCurrentDirectory(GetPathPart(ProgramFilename()))

Global PBEx_MTP

#PBEx_MTP_Type_File = 1
#PBEx_MTP_Type_Directory = 2
#PBEx_MTP_DeviceType_Generic = 0
#PBEx_MTP_DeviceType_Camera = 1
#PBEx_MTP_DeviceType_MediaPlayer = 2
#PBEx_MTP_DeviceType_Phone = 3
#PBEx_MTP_DeviceType_Video = 4
#PBEx_MTP_DeviceType_PersonalInformationManager = 5
#PBEx_MTP_DeviceType_AudioRecorder = 6

;;; http://www.rsbasic.de/downloads/download.php?file=PB.Ex_MTP.zip
;;; https://disk.yandex.ru/d/fDOjETCZVANSGw
;;; https://www.upload.ee/files/14617724/Synchronization.7z.html

;;; Télécharger les librairies:
;;; http://www.rsbasic.de/downloads/download.php?file=PB.Ex_MTP.zip

CompilerIf #PB_Compiler_Processor = #PB_Processor_x86
  PBEx_MTP = OpenLibrary(#PB_Any, "PB.Ex_MTP_x86.dll")
  If Not PBEx_MTP
    Debug #CRLF$+"La DLL PB.Ex_MTP_x86.dll est absente du dossier "+GetPathPart(ProgramFilename())
    End
  EndIf
CompilerElseIf #PB_Compiler_Processor = #PB_Processor_x64
  PBEx_MTP = OpenLibrary(#PB_Any, "PB.Ex_MTP_x64.dll")
  If Not PBEx_MTP
    Debug #CRLF$+"La DLL PB.Ex_MTP_x64.dll est absente du dossier "+GetPathPart(ProgramFilename())
    End
  EndIf
CompilerEndIf

If PBEx_MTP
  Prototype ExamineMTP(ErrorOutput)
  Global ExamineMTP.ExamineMTP = GetFunction(PBEx_MTP, "ExamineMTP")
  Prototype NextMTPEntry(ErrorOutput)
  Global NextMTPEntry.NextMTPEntry = GetFunction(PBEx_MTP, "NextMTPEntry")
  Prototype FinishMTP(ErrorOutput)
  Global FinishMTP.FinishMTP = GetFunction(PBEx_MTP, "FinishMTP")
  Prototype MTPEntryName(Output, ErrorOutput)
  Global MTPEntryName.MTPEntryName = GetFunction(PBEx_MTP, "MTPEntryName")
  Prototype OpenMTP(ID, DeviceName.p-Unicode, ErrorOutput)
  Global OpenMTP.OpenMTP = GetFunction(PBEx_MTP, "OpenMTP")
  Prototype CloseMTP(ID, ErrorOutput)
  Global CloseMTP.CloseMTP = GetFunction(PBEx_MTP, "CloseMTP")
  Prototype IsMTP(ID, ErrorOutput)
  Global IsMTP.IsMTP = GetFunction(PBEx_MTP, "IsMTP")
  Prototype ExamineMTPDirectory(ID, ErrorOutput)
  Global ExamineMTPDirectory.ExamineMTPDirectory = GetFunction(PBEx_MTP, "ExamineMTPDirectory")
  Prototype FinishMTPDirectory(ID, ErrorOutput)
  Global FinishMTPDirectory.FinishMTPDirectory = GetFunction(PBEx_MTP, "FinishMTPDirectory")
  Prototype NextMTPDirectoryEntry(ID, ErrorOutput)
  Global NextMTPDirectoryEntry.NextMTPDirectoryEntry = GetFunction(PBEx_MTP, "NextMTPDirectoryEntry")
  Prototype MTPDirectoryEntryName(ID, Output, ErrorOutput)
  Global MTPDirectoryEntryName.MTPDirectoryEntryName = GetFunction(PBEx_MTP, "MTPDirectoryEntryName")
  Prototype SetMTPDirectory(ID, DirectoryPath.p-Unicode, ErrorOutput)
  Global SetMTPDirectory.SetMTPDirectory = GetFunction(PBEx_MTP, "SetMTPDirectory")
  Prototype GetMTPDirectory(ID, Output, ErrorOutput)
  Global GetMTPDirectory.GetMTPDirectory = GetFunction(PBEx_MTP, "GetMTPDirectory")
  Prototype MTPDirectoryEntryType(ID, ErrorOutput)
  Global MTPDirectoryEntryType.MTPDirectoryEntryType = GetFunction(PBEx_MTP, "MTPDirectoryEntryType")
  Prototype ReceiveMTPFile(ID, RemoteFileName.p-Unicode, FileName.p-Unicode, ErrorOutput)
  Global ReceiveMTPFile.ReceiveMTPFile = GetFunction(PBEx_MTP, "ReceiveMTPFile")
  Prototype MTPDirectoryEntrySize(ID, ErrorOutput)
  Global MTPDirectoryEntrySize.MTPDirectoryEntrySize = GetFunction(PBEx_MTP, "MTPDirectoryEntrySize")
  Prototype MTPDirectoryEntryDate(ID, ErrorOutput)
  Global MTPDirectoryEntryDate.MTPDirectoryEntryDate = GetFunction(PBEx_MTP, "MTPDirectoryEntryDate")
  Prototype GetMTPDescription(ID, Output, ErrorOutput)
  Global GetMTPDescription.GetMTPDescription = GetFunction(PBEx_MTP, "GetMTPDescription")
  Prototype GetMTPDeviceID(ID, Output, ErrorOutput)
  Global GetMTPDeviceID.GetMTPDeviceID = GetFunction(PBEx_MTP, "GetMTPDeviceID")
  Prototype GetMTPDeviceType(ID, ErrorOutput)
  Global GetMTPDeviceType.GetMTPDeviceType = GetFunction(PBEx_MTP, "GetMTPDeviceType")
  Prototype GetMTPFirmwareVersion(ID, Output, ErrorOutput)
  Global GetMTPFirmwareVersion.GetMTPFirmwareVersion = GetFunction(PBEx_MTP, "GetMTPFirmwareVersion")
  Prototype GetMTPFriendlyName(ID, Output, ErrorOutput)
  Global GetMTPFriendlyName.GetMTPFriendlyName = GetFunction(PBEx_MTP, "GetMTPFriendlyName")
  Prototype GetMTPManufacturer(ID, Output, ErrorOutput)
  Global GetMTPManufacturer.GetMTPManufacturer = GetFunction(PBEx_MTP, "GetMTPManufacturer")
  Prototype GetMTPModel(ID, Output, ErrorOutput)
  Global GetMTPModel.GetMTPModel = GetFunction(PBEx_MTP, "GetMTPModel")
  Prototype GetMTPPnPDeviceID(ID, Output, ErrorOutput)
  Global GetMTPPnPDeviceID.GetMTPPnPDeviceID = GetFunction(PBEx_MTP, "GetMTPPnPDeviceID")
  Prototype GetMTPSerialNumber(ID, Output, ErrorOutput)
  Global GetMTPSerialNumber.GetMTPSerialNumber = GetFunction(PBEx_MTP, "GetMTPSerialNumber")
EndIf

Global Output$ = Space(1024)
Global ErrorOutput$ = Space(128)

;;; Documentation : https://www.purebasic.fr/english/viewtopic.php?t=72815

;;; List all devices To determine the device name.
Global Appareil$
If ExamineMTP(@ErrorOutput$)
  While NextMTPEntry(@ErrorOutput$)
    MTPEntryName(@Output$, @ErrorOutput$)
    Appareil$=Output$
    Debug Appareil$
  Wend
EndIf

;;; List all directories and files.
;If OpenMTP(1, "Canon IXUS 125 HS", @ErrorOutput$)
;If OpenMTP(1, "Wileyfox Spark +" , @ErrorOutput$)
;If OpenMTP(1, "Tab2A7-10F"       , @ErrorOutput$)

If OpenMTP(1, Appareil$, @ErrorOutput$)
  ;Get device information
  GetMTPFriendlyName(1, @Output$, @ErrorOutput$)
  Debug "Friendly name: " + Output$
  GetMTPManufacturer(1, @Output$, @ErrorOutput$)
  Debug "Manufacturer: " + Output$
  GetMTPFirmwareVersion(1, @Output$, @ErrorOutput$)
  Debug "Firmware version: " + Output$
  GetMTPPnPDeviceID(1, @Output$, @ErrorOutput$)
  Debug "PnPDeviceID: " + Output$
  GetMTPModel(1, @Output$, @ErrorOutput$)
  Debug "Model: " + Output$
  
  Debug "--------------------------------------------------"
  
 ;SetMTPDirectory(1, "\Internal Storage\DCIM\100APPLE", @ErrorOutput$)
 ;SetMTPDirectory(1, "\storage\emulated\0"            , @ErrorOutput$) ; Non
 ;SetMTPDirectory(1, "\storage\C651-32AE\"            , @ErrorOutput$) ; Non
 ;SetMTPDirectory(1, "\storage\C651-32AE"             , @ErrorOutput$) ; Non
 ;;; Définitions qui fonctionnent pour moi.
 ;;; Correspondent ace que je vois dans l'explorateur Windows quand l'appareil est connecté en USB
 ;SetMTPDirectory(1, "Carte SD SanDisk"               , @ErrorOutput$);;Carte SD SanDisk
 ;SetMTPDirectory(1, "Mémoire de stockage interne"    , @ErrorOutput$);;Mémoire de stockage interne
 
  SetMTPDirectory(1, "Mémoire de stockage USB", @ErrorOutput$)
  
  If ExamineMTPDirectory(1, @ErrorOutput$)
    While NextMTPDirectoryEntry(1, @ErrorOutput$)
      MTPDirectoryEntryName(1, @Output$, @ErrorOutput$)
      If MTPDirectoryEntryType(1, @ErrorOutput$) = #PBEx_MTP_Type_Directory
        Debug "Folder: " + Output$
      ElseIf  MTPDirectoryEntryType(1, @ErrorOutput$) = #PBEx_MTP_Type_File
        Debug "File: " + Output$
        Debug Str(MTPDirectoryEntrySize(1, @ErrorOutput$)) + " Bytes"
        Debug FormatDate("%dd.%mm.%yyyy %hh:%ii:%ss", MTPDirectoryEntryDate(1, @ErrorOutput$))
      EndIf
    Wend
  EndIf
  
  CloseMTP(1, @ErrorOutput$)
Else
  Debug ErrorOutput$
EndIf

CloseLibrary(PBEx_MTP)
La documentation est disponible dans ce post de RSBasic
https://www.purebasic.fr/english/viewtopic.php?t=72815

Pour adb, je vais mettre a jour le site avec les dernières sources et exécutables.
J'ai pas mal avancé et j'ai tout testé en USB et en Wifi sans soucis.
Voici la procédure qui documente le combo avec les commandes

Code : Tout sélectionner

Procedure.a documenter_app_combo_gadget()
  ClearGadgetItems(#GadgetCombo)
  AddGadgetItem(#GadgetCombo, -1,"--------------- Sélectionnez une commande (* nécessite les droits admin) ---------------")
  AddGadgetItem(#GadgetCombo, -1,"arp -a")
  AddGadgetItem(#GadgetCombo, -1,"getmac /v /fo list")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /all")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /displaydns")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /flushdns")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /registerdns *")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /release")
  AddGadgetItem(#GadgetCombo, -1,"ipconfig /renew")
  AddGadgetItem(#GadgetCombo, -1,"net share")
  AddGadgetItem(#GadgetCombo, -1,"netstat -rn")
  AddGadgetItem(#GadgetCombo, -1,"ping %IP%")
  AddGadgetItem(#GadgetCombo, -1,"route print")
  AddGadgetItem(#GadgetCombo, -1,"set")
  AddGadgetItem(#GadgetCombo, -1,"PATH")
  AddGadgetItem(#GadgetCombo, -1,"------------------- ADB via Ethernet, Wifi ou USB -----------------------------------------")
  AddGadgetItem(#GadgetCombo, -1,"adb help             | affiche l'aide d'adb")
  AddGadgetItem(#GadgetCombo, -1,"adb version          | affiche la version d'adb")
  AddGadgetItem(#GadgetCombo, -1,"adb start-server     | active le serveur adb")
  AddGadgetItem(#GadgetCombo, -1,"adb tcpip 5555       | écoute une connexion sur le port 5555")
  AddGadgetItem(#GadgetCombo, -1,"adb kill-server      | arrête le serveur adb")
  AddGadgetItem(#GadgetCombo, -1,"adb connect %IP%     | se connecte a l'adresse %IP%[:5555]")
  AddGadgetItem(#GadgetCombo, -1,"adb devices -l       | affiche la liste des appareils connectés")
  AddGadgetItem(#GadgetCombo, -1,"adb disconnect       | se déconnecte de l'adresse %IP%[:5555], ou de toutes")
  AddGadgetItem(#GadgetCombo, -1,"adb install %APK%    | installe le paquet %APK%")
  AddGadgetItem(#GadgetCombo, -1,"adb shell id         | identifie l'utilisateur courant uid=0(root) gid=0(root)")
  AddGadgetItem(#GadgetCombo, -1,"adb logcat           | affiche le journal de l'appareil Android (Terminer par CRTL+C)")
  AddGadgetItem(#GadgetCombo, -1,"adb logcat -c        | efface le journal")
  AddGadgetItem(#GadgetCombo, -1,"adb logcat -d > %LOG%| sauvegarde le journal dans %LOG%")
  AddGadgetItem(#GadgetCombo, -1,"adb reboot           | effectue un reboot de l'appareil")
  AddGadgetItem(#GadgetCombo, -1,"-------------------------------------------------------------------------------------------")
  AddGadgetItem(#GadgetCombo, -1,"")
  SetGadgetState(#GadgetCombo, 0)
EndProcedure
Il y a déjà plus de commande adb
Je vais tester dans la foulée le backup/sauvegarde de l'appareil Android sur le PC et si je ne rencontre pas de soucis, je tenterais la restauration du PC vers l'appareil Android.
A priori, tous les bons logiciels que je connais pour s'interfacer avec Android a partir du PC semblent utiliser adb (mais pas que, peut-être)
cage
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Avatar de l’utilisateur
cage
Messages : 604
Inscription : ven. 16/oct./2015 18:22
Localisation : France
Contact :

Re: ADB sous Windows - Installer des APK a distance

Message par cage »

Bonsoir,
Une mise à jour de l'application (sources et exe) est disponible sur http://pbcage.free.fr
Un aperçu de la nouvelle interface avec menu s'affichant au clic droit et une ligne de commande qui permet de passer les commandes qu'on souhaites.
Image
cage
■ Win10 Pro 64-bit (Intel Celeron CPU N2920 @ 1.86GHz, 4,0GB RAM, Intel HD Graphics) & PB 6.12 LTS
■ Vivre et laisser vivre.
■ PureBasic pour le fun
■ Gérard sur le forum Anglais
■ Mes sites: http://pbcage.free.fr - http://yh.toolbox.free.fr
Répondre