2017-05-22 2 views
0

J'utilise une application bancaire (application Android). L'application ne permet pas de captures d'écran. Quand j'ouvre UI Automator Viewer et essayer de prendre une capture d'écran, je reçois l'erreur suivante:Reconnaître les éléments de page/objets d'une application Android ayant une capture d'écran désactivée dans tous les écrans

'Error while obtaining UI hierarchy XML file: com.android.ddmlib.SyncException: Remote object doesn't exist! Error while obtaining UI hierarchy XML file: com.android.ddmlib.SyncException: Remote object doesn't exist!'

J'utilise Appium + Sélénium pour l'automatisation.

Question:

  1. Est-il possible d'activer la fonction capture d'écran par programmation dans l'application?

  2. est-il un moyen de trouver l'objet racine dans l'écran de l'application et itérer à travers tous les objets enfant récursive et imprimer leurs attributs/propriétés (comme PageObjectModel)?

Aidez-moi s'il vous plaît. Merci.

Répondre

0

cernées le travail autour des étapes suivantes:

  1. Ouvrez l'application
  2. utilisation driver.getPageSource() pour obtenir la source de la page en tant que chaîne
  3. Parse la chaîne de source de la page et identifier l'élément dont j'ai besoin travailler avec. Ensuite, stockez les attributs de l'élément de manière descriptive dans la classe Modèle d'objet Page

Faites-moi savoir si quelqu'un a une meilleure idée. Merci