il y a du nouveau j'arrive grâce a un service a avoir un événement lorsque je dit "ok google" mais je n'arrive toujours pas a récupéré la suite vous pourrez peut-être m'aider j'ai déjà une idée de comment procéder. Dans mon application l'utilisateur va interroger google exemple "ok google manger" l'utilisateur va sûrement être redirigé par google now sur une page comme ceci :
![résultat de google](http://ne0ratek.16mb.com/servicegg.png)
mon but est alors de récupéré manger, j'ai déjà réussi mais pour cela il faut que j'appuie sur manger comme si je voulais écrire dans l'editText
voilà mon code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 | public class NotificationService extends AccessibilityService {
@Override
public void onAccessibilityEvent(AccessibilityEvent event) {
System.out.println("******onAccessibilityEvent*******");
if(event.getEventType() == AccessibilityEvent.TYPE_VIEW_FOCUSED || event.getEventType() == AccessibilityEvent.TYPE_WINDOWS_CHANGED) {
System.out.println(" NAME : " + event.getClassName());
System.out.println(" NAME PCK : " + event.getPackageName());
System.out.println(" SOURCE : " + event.getSource());
System.out.println(" TEXT : " + event.getText());
}
}
// fonction d'essaie qui n'a pas fonctionner
private String RecupCommandGoogle(AccessibilityEvent mEvent, AccessibilityNodeInfo mSource) {
if (mSource != null & mEvent.getClassName().equals("android.view.View")) {
return String.valueOf(mSource.performAction(AccessibilityNodeInfo.ACTION_SELECT));
}
return null;
}
@Override
protected void onServiceConnected() {
System.out.println("onServiceConnected");
AccessibilityServiceInfo info = new AccessibilityServiceInfo();
info.eventTypes = AccessibilityEvent.TYPE_WINDOWS_CHANGED | AccessibilityEvent.TYPE_VIEW_FOCUSED ;
info.packageNames = new String[] {"com.google.android.launcher" , "com.google.android.googlequicksearchbox"};
info.feedbackType = AccessibilityEvent.TYPES_ALL_MASK;
info.notificationTimeout = 100;
setServiceInfo(info);
}
@Override
public void onInterrupt() {
System.out.println("onInterrupt");
}
|
Merci d'avance pour votre aide
Bonne soirée