자신의 브라우저에 입력 한 URL을 읽고 싶습니다. 다음은 내 접근성 서비스 코드입니다. MyAccessibilityService에서 AndroidManifest를Android : 접근성 서비스를 사용하여 Google 크롬 URL을 읽기
<service android:name=".MyAccessibilityService"
android:label="@string/accessibility_title"
android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService"/>
</intent-filter>
<meta-data
android:name="android.accessibilityservice"
android:resource="@xml/accessibility_service_config" />
</service>
에서
<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"
android:accessibilityFlags="flagDefault"
android:accessibilityEventTypes="typeWindowStateChanged"
android:accessibilityFeedbackType="feedbackGeneric"
android:notificationTimeout="0"
android:canRetrieveWindowContent="true"
android:packageNames="com.android.chrome"
android:description="@string/accessibility_description"
/>
public void onAccessibilityEvent(AccessibilityEvent event) {
debug("On accessibility event");
getChromeUrl(getRootInActiveWindow());
}
public void getChromeUrl(AccessibilityNodeInfo nodeInfo) {
//Use the node info tree to identify the proper content.
//For now we'll just log it to logcat.
Log.d(TAG, toStringHierarchy(nodeInfo, 0));
}
private String toStringHierarchy(AccessibilityNodeInfo info, int depth) {
if (info == null) return "";
String result = "|";
for (int i = 0; i < depth; i++) {
if (result.contains("http")) {
Log.d(TAG, "Found URL!!!!!!!!!!!!!!" + result);
}
result += " ";
}
result += info.toString();
for (int i = 0; i < info.getChildCount(); i++) {
result += "\n" + toStringHierarchy(info.getChild(i), depth + 1);
}
return result;
}
private static void debug(Object object) {
Log.d(TAG, object.toString());
}
문제는 내가 내 rootview 아닌 상단 주소 표시 줄에 URL의 내용에서보기를 얻고있다. 어떤 도움을 주셔서 감사합니다.
액세스하는 아이들을 재활용하는 것이 좋습니다.'AccessibilityNodeInfo child = info.getChild (i); dfs (자식); child.recycle(); ' – Ishamael
@Ishamael : 감사합니다. – cegprakash
@cegprakash가 URL을 변경하고 크롬을 다른 페이지로 리디렉션하는 방법이 있습니까?https://stackoverflow.com/questions/42731897/redirect-chrome-programmatically – kash