4

アプリをGmail内のリストに表示したいのですが。このリストは、Gmailアプリ内の[プレビュー]ボタンをクリックすると表示されます。

インテントフィルターに追加する必要のあるエントリを知りたいのですが?

よろしくお願いします。

4

1 に答える 1

8

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...
于 2012-08-29T16:10:37.500 に答える