IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI Delphi Discussion :

[RIO] Connexion micro sur port USB


Sujet :

EDI Delphi

  1. #1
    Membre régulier
    Développeur informatique
    Inscrit en
    Décembre 2010
    Messages
    228
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 228
    Points : 113
    Points
    113
    Par défaut [RIO] Connexion micro sur port USB
    Bonjour,

    Sur une appli Android développée sous RIO, je souhaite brancher un micro sur le port USB de mon device, que celui-ci soit détecté au branchement de celui-ci pour lancer mon application. Dans mon application j'enregistre du son à partir de ce capteur.

    En reprenant les conseils du lien j'ai paramétré mon AndroidManifest.template :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <uses-feature android:name="android.hardware.usb.host" />
    <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" android:resource="@xml/device_filter" />
    <intent-filter>  
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />				
    <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />			
    </intent-filter>
    Le fichier XML "device_filter.xml" qui détaille les infos du micro est bien présent dans res/xml/.

    Le déploiement de l'application en mode DEBUG (développement et magasin d'applications) fonctionne correctement.

    Le déploiement de l'application en mode RELEASE (développement et magasin d'applications) plante avec une erreur "[PAClient Erreur] Arrêt de "paclient" avec le code 1." sur la ligne de commande:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      c:\program files (x86)\embarcadero\studio\20.0\bin\paclient.exe -u8 
      --aaptpackage="C:\Users\Public\Documents\Embarcadero\Studio\19.0\PlatformSDKs\android-sdk-windows\build-tools\28.0.3\aapt.exe,.\Android\Release\MonApp\library,.\Android\Release\MonApp\classes,.\Android\Release\MonApp\res,.\Android\Release\MonApp\assets,.\Android\Release\MonApp\AndroidManifest.xml,C:\Users\Public\Documents\Embarcadero\Studio\19.0\PlatformSDKs\android-sdk-windows\platforms\android-28\android.jar,.\Android\Release\MonApp\bin\MonApp-unsigned.apk"
    L'erreur 1 correspond à une option non valide. OK mais pourquoi cela fonctionne en DEBUG et pas en RELEASE ?

    Je remarque que j'ai le même problème sous Tokyo.

    Merci pour vos conseils.

    Lefju

  2. #2
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    l'erreur 1 est pas très explicite, tu n'aurais pas un problème de certificat ? essai aussi tout simplement de supprimer l'appli du smartphone avant de la redéployer
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Membre régulier
    Développeur informatique
    Inscrit en
    Décembre 2010
    Messages
    228
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 228
    Points : 113
    Points
    113
    Par défaut
    Bonjour Paul,

    Effectivement l'erreur 1 n'est pas explicite et semble être un fourre-tout...

    J'ai supprimé l'appli de mon smartphone pour relancer le déploiement mais c'est la même erreur.

    Je ne pense pas que ce soit un problème de certificat car lorsque je retire du AndroidManifest.template la ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" android:resource="@xml/device_filter" />
    la construction et le déploiement de mon appli en Release est OK. Par contre mon micro n'est plus reconnu dans mon application

    Et l'ensemble fonctionne en mode Debug.

  4. #4
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    est-ce que le fichier APK est généré ? tu peux tenter de le déployer par copier/coller sur le smartphone et de l'installer par double clic dessus.

    tu peux aussi le faire via ADB adb install Project.apk
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  5. #5
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 661
    Points : 3 630
    Points
    3 630
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    J'avais rencontré une erreur un peu similaire à l'époque de Delphi Berlin : mon application se déployait bien sur le périphérique Android en mode Debug et pas en mode Release.
    Dans mon cas, dans les options du projet pour Android, j'avais bien les différents icônes pour la configuration Debug mais aucun pour la configuration Release. En renseignant ces icônes, tout est rentré dans l'ordre.
    Mon site - Mes tutoriels - GitHub - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  6. #6
    Membre régulier
    Développeur informatique
    Inscrit en
    Décembre 2010
    Messages
    228
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 228
    Points : 113
    Points
    113
    Par défaut
    est-ce que le fichier APK est généré ? tu peux tenter de le déployer par copier/coller sur le smartphone et de l'installer par double clic dessus.
    tu peux aussi le faire via ADB adb install Project.apk
    Le fichier APK n'est pas généré, la construction plante avant.

    Dans mon cas, dans les options du projet pour Android, j'avais bien les différents icônes pour la configuration Debug mais aucun pour la configuration Release. En renseignant ces icônes, tout est rentré dans l'ordre.
    J'ai vérifié mais les icônes sont bien renseignées dans les deux configurations.

    Le problème vient de la ligne de config de mon micro. Si je retire la ligne ci-dessous de mon AndroidManiest.template, la construction et le déploiement en Release fonctionne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" android:resource="@xml/device_filter" />

  7. #7
    Membre régulier
    Développeur informatique
    Inscrit en
    Décembre 2010
    Messages
    228
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 228
    Points : 113
    Points
    113
    Par défaut
    J'ai récupéré la commande qui plante sous Rio avec le code d'erreur 1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    c:\program files (x86)\embarcadero\studio\20.0\bin\paclient.exe -u8 
    --aaptpackage="C:\Users\Public\Documents\Embarcadero\Studio\19.0\PlatformSDKs\android-sdk-windows\build-tools\28.0.3\aapt.exe,
    .\Android\Release\AppTest\library,
    .\Android\Release\AppTest\classes,
    .\Android\Release\AppTest\res,
    .\Android\Release\AppTest\assets,
    .\Android\Release\AppTest\AndroidManifest.xml,
    C:\Users\Public\Documents\Embarcadero\Studio\19.0\PlatformSDKs\android-sdk-windows\platforms\android-28\android.jar,
    .\Android\Release\AppTest\bin\DygiVib-unsigned.apk"

    Si j'exécute cette commande sous cmd, j'obtiens un message d'erreur plus explicite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    (erreur 1)
    Erreur : E2312 D:\DEV\trunk\AppTest\Android\Release\AppTest\AndroidManifest.xml:
    48: error: Error: No resource found that matches the given name (at 'resource' with value '@xml/device_filter')
    En copiant mon fichier de ressource device_filter.xml dans le répertoire .\Android\Release\AppTest\res\xml, la commande s'exécute correctement sous cmd, un fichier APK non signé est créé.

    Donc le problème vient de ce fichier qui n'est pas disponible lors du déploiement. A chaque déploiement sous Rio, le répertoire .\Android\Release\AppTest\res\xml est récrée.

    Je dois paramétrer le manifest pour qu'il rattache mon device_filter.xml lors du déploiement mais ça se complique

  8. #8
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    ah c'est pas un problème dans l'onglet Deploiement ? (Projet/Déploiement)
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  9. #9
    Membre régulier
    Développeur informatique
    Inscrit en
    Décembre 2010
    Messages
    228
    Détails du profil
    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2010
    Messages : 228
    Points : 113
    Points
    113
    Par défaut
    J'ai vérifié le chemin de mon fichier XML dans Projet/Déploiement.
    En mode debug, il était bien renseigné: res\xml\
    En mode release, il était incorrect : .\assets\internal

    En renseignant le bon chemin, ma construction et mon déploiement fonctionnent :
    Nom : Clipboard020.png
Affichages : 210
Taille : 14,5 Ko

    Merci Paul !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lecture sur Port USB en C/C++
    Par gobelin88 dans le forum C++
    Réponses: 1
    Dernier message: 10/09/2007, 22h08
  2. Réponses: 5
    Dernier message: 12/06/2007, 17h52
  3. Envoyer une trame sur port USB
    Par Bocci dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 15/03/2007, 21h07
  4. Compatibilité clé usb 2.0 sur port usb 1.0 de mon portable?
    Par coubi64 dans le forum Périphériques
    Réponses: 2
    Dernier message: 22/10/2003, 18h57
  5. [TP]Impression sur port USB
    Par haypo dans le forum Turbo Pascal
    Réponses: 3
    Dernier message: 18/07/2003, 11h09

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo