私はアンドロイドの初心者です。私はビューのビューIDを取得したい、ユーザーは現在見ている。 私はもう少し明確な質問をします。ユーザーがMakeMyTripを開き、Flight予約ページまでナビゲートしてください。その特定のレイアウトのView IDを取得したいと思います。 以下は私のサービスクラスとXML設定ファイルです。 window_content_changed
イベントのソースノードは、レイアウトのルートノードになるだろうアンドロイドのアクセシビリティサービスを使用してビューIDを取得する方法
Log.d("ViewID", null)
:私の推測は
Log.d("ViewID",source.getViewIdResourceName());
へお電話
がこれをやっているということである
public class MyAccessibilityService extends AccessibilityService {
@Override
public void onAccessibilityEvent(AccessibilityEvent event) {
AccessibilityNodeInfo source = event.getSource();
Log.d("ViewID",source.getViewIdResourceName());
}
@Override
public void onInterrupt() {
}
<accessibility-service
xmlns:android="http://schemas.android.com/apk/res/android"
android:accessibilityEventTypes="typeWindowContentChanged"
android:accessibilityFeedbackType="feedbackGeneric"
android:accessibilityFlags="flagReportViewIds"
android:canRetrieveWindowContent="true"
android:description="@string/accessibility_service_description"
android:packageNames="com.makemytrip" />
このコードを使用して、私のアプリはMakeMyTripアプリケーションの起動時にクラッシュしています。 – Raghu
[LogCat](https://developer.android.com/studio/debug/am-logcat.html)に表示されている完全なエラートレースを追加してください。 – GertG