2011-01-10 7 views
0

Ich habe meine App mit ACTION_VIEW Intents für einen bestimmten Datentyp gemacht, was es gut geht. Ich kann nicht herausfinden, wie man tatsächlich erkennt, ob meine App auf diese Weise gestartet wurde und wie man die angehängten Daten bekommt. Kann mir jemand in die richtige Richtung zeigen? Hier ist ein Auszug aus meinem Manifest, wenn es hilft.Wenn meine App über ACTION_VIEW gestartet wurde, wie kann ich die angehängten Daten abrufen?

<activity android:name=".MyApp" 
      android:label="@string/app_name" 
      android:screenOrientation="portrait" > 

      ... 

      <intent-filter> 
       <action android:name="android.intent.action.VIEW"/> 
       <action android:name="android.intent.action.EDIT" /> 
       <action android:name="android.intent.action.PICK" /> 
       <category android:name="android.intent.category.DEFAULT" /> 
       <data android:mimeType="audio/wav" /> 
      </intent-filter> 


</activity> 

Antwort

5

Sie können die Daten URI aus den Daten der Absicht abrufen:

 
Uri uri = getIntent() != null ? getIntent().getData() : null; 
2

erkennen, ob diese Aktion Ihre App unter Verwendung gestartet:

String action = intent.getAction(); 
    if (Intent.ACTION_VIEW.equals(action) // watch out for action being null! 
Verwandte Themen