Wie kann ich mit uiautomator das übergeordnete Element einer Ansicht ermitteln?

Ich versuche, die übergeordnete Ansicht eines UI-Elements zu identifizieren, damit ich frei durch die Benutzeroberfläche navigieren kann.

Zum Beispiel kann ich in der Einstellungen-App die Ansicht mit dem Text "Bluetooth" finden:

UiObject btView = new UiObject(new UiSelector().text("Bluetooth"));

Der Teil, an dem ich hängenbleibe, ist der folgende: Ich möchte zwei Ebenen nach oben navigieren und eine neue Suche nach dem Ein- / Ausschalter starten, der Bluetooth aktiviert und deaktiviert.

Hinweis: Ich kann die Schaltfläche erhalten, wenn ich den folgenden Code verwende.

UiObject btButtonView = new UiObject(new UiSelector().className("android.widget.Switch").instance(1));

Dies sucht nach Schaltern und gibt die zweite Begegnung zurück. Ich möchte eine genauere Suche und suche nach der Schaltfläche im linearen Layout, die den Text "Bluetooth" enthält.

UPDATE: Dies ist das Layout der Settings-App (der benötigte Bluetooth-Teil):

LinearLayout
    LinearLayout
        ImageView
    RelativeLayout
        TextView (with text = "Bluetooth")
    Switch ()

Antworten auf die Frage(4)

Ihre Antwort auf die Frage