VoiceAction Navigations Intent

  • 0 Antworten
  • Letztes Antwortdatum
R

Ruffy1213

Neues Mitglied
0
Hallo,

ich schreibe grad eine kleine app für mich, die Intents konvertiert.

Da das Copilot nicht so wirklich viele Intents versteht.

Bisher klappt das ganze ziemlich gut.


Das Sind die Intents die gestartet werden, wenn ich "Navigiere nach Dortmund" in der Google Suche eingebe/einsage.
Code:
http://maps.google.com/maps/place?sll=51.513587,7.465298&q=Dortmund
und
google.navigation:title=Dortmund&ll=51.513587,7.465298&token=FfMIEgMdUulxACkRevC_YBe5RzFQh1QxgfInBA&entry=r&mode=d

Diese habe ich geparst und in folgende form umgewandelt

Code:
http://maps.google.com/maps?q=51.513587,7.465298

In dieser Form können Die Intents auch von Copilot Intepretiert werden.

So nun zu meinem eigentlichen Problem.
Wenn ich nun Bei der Google Voice Search eine Umgebungssuche mache.
Bsp.:
"Suche den nächsten McDonald's"

Bekomme ich folgenden Intent im LogCat

Code:
02-25 21:45:12.932: I/ActivityManager(717): 
START u0 {act=android.intent.action.VIEW 
cat=[android.intent.category.BROWSABLE] 
dat=http://maps.google.de/maps?client=ms-android-google&entrypoint=android-velvet&hl=de-DE&ctzn=Europe/Berlin&oe=utf-8&devloc=0&fheit=0&inm=vs&safe=images&redir_esc=&noj=1&biw=384&gcc=de&v=3.2.17.1009776.arm&rlz=1Y2TXLS_deDE567DE567&spknlang=de-DE&ttsm=default&bih=567&um=1&ie=UTF-8&q=McDonald's&fb=1&gl=de&hq=McDonald's&hnear=0x4799db34c1ad8fd3:0x79d5c11c7791cfe4,Stuttgart&entry=s&sa=X&ei=0AANU__hGYTTtAbJzICYBw&ved=0CCkQtgM 
flg=0x10000000 
pkg=com.google.android.apps.maps 
cmp=com.google.android.apps.maps/com.google.android.maps.MapsActivity (has extras)} from pid 15091


Und das ist meine Manifest
Code:
...
 <activity
            android:name="de.firstapp.startcopilot.MainActivity"
            android:label="@string/app_name" >

            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>

            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:scheme="google.navigation" />
            </intent-filter>

            <intent-filter>
                <data
                    android:host="maps.google.com"
                    android:scheme="http" />
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
            </intent-filter>
           
        </activity>
...

Nun meine erste Vermutung, warum ich das Intent nicht abfangen konnte, das der host sich unterscheidet (com/de).
--Daran lag es leider nicht

Meine zweite Vermutung ist, dass das Intent direkt and die google maps app geleitet wird. Weswegen Sie auch unter pgk steht.
Stimmt das?
Und Falls ja, kann ich trotzdem irgendwie auf die daten des Intents zugreifen?
 
Zurück
Oben Unten