Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Add my app to the list of "Complete Action Using" for attachments in gmail

I would like my app to appear in the list within gmail. This list comes up when I click the Preview button within the Gmail app.

I would like to know what entries need to be added in the intent filter?

Thanks for the help in advance.

like image 419
mithun Avatar asked Feb 19 '23 08:02

mithun


1 Answers

Have a look at Intent Filters: http://developer.android.com/guide/components/intents-filters.html

Specifically, I think you'll find the Note Pad Example helpful: http://developer.android.com/guide/components/intents-filters.html#npex

Personally, I had this same exact issue a few hours ago. I needed to open text files with my app. To do so, I had to add this to my manifest:

<activity
    android:name=".(ActivityName)"
    android:label="@string/app_name"
    android:exported="true" >
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
    <intent-filter>
        <action android:name="com.google.android.apps.drive.DRIVE_OPEN" />
        <action android:name="android.intent.action.VIEW" />
        <action android:name="android.intent.action.EDIT" />
        <action android:name="android.intent.action.INSERT" />
        <category android:name="android.intent.category.DEFAULT" />
        <data android:mimeType="text/*" />
    </intent-filter>
</activity>

With just this, I was able to make my app appear in the list of available applications to open text files from Astro, and allow it to be launched.

To make it actually handle opening the files, you need to add something like this to your onCreate in the activity:

Intent intent = getIntent();
Action action = intent.getAction();
if (action.equals("com.google.android.apps.drive.DRIVE_OPEN")) {
    // Handle the intent from google drive...
} else if (action.equals("android.intent.action.VIEW")) {
    // Handle the intent to view the file...
} else // And so on...
like image 108
ArtOfWarfare Avatar answered Apr 28 '23 12:04

ArtOfWarfare