Closed codef0rmer closed 6 years ago
did you manage to make it work?
@haiderghaleb Nope, not sure why though. However, I managed to do it differently,
AndroidManifest.xml
.<uses-permission android:name="android.permission.RETRIEVE_WINDOW_CONTENT" />
<uses-permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE" />
<service android:name="com.tns.notifications.USSDService" android:enabled="true" android:exported="false" android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE" android:canRetrieveWindowContent="true" android:accessibilityFlags="flagRetrieveInteractiveWindows">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService" />
</intent-filter>
</service>
app/notifications/USSDService.js
.android.accessibilityservice.AccessibilityService.extend("com.tns.notifications.USSDService", {
onAccessibilityEvent: function(event) {
var dialogText = event.getText().toString();
},
onServiceConnected: function() {
console.log('USSD connected');
this.super.onServiceConnected();
// This code allows me to read content out of USSD dialog
var AccessibilityServiceInfo = android.accessibilityservice.AccessibilityServiceInfo;
var info = new AccessibilityServiceInfo();
info.packageNames = ["org.nativescript.MyApp"];
info.flags = AccessibilityServiceInfo.DEFAULT;
info.eventTypes = android.view.accessibility.AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED;
info.feedbackType = AccessibilityServiceInfo.FEEDBACK_GENERIC;
this.setServiceInfo(info);
}
});
USSD connected
in the log (terminal).
I'm trying to get a permission for
android.permission.BIND_ACCESSIBILITY_SERVICE
but it always returns{"android.permission.BIND_ACCESSIBILITY_SERVICE":false}
.Additionally, I've
<uses-permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE" />
underAndroidManifest.xml
Any idea why it does not work?