1

使用 Android,当我在默认浏览器中单击电子邮件地址时,会弹出一个菜单列表,其中包含 Gmail(内置电子邮件客户端)和 K-9(另一个电子邮件应用程序)。

我想将我的 android 应用程序添加到此列表中。这可能吗?我该怎么做?

4

3 回答 3

2

您需要创建一个IntentFilter这需要 Java 代码,您可以在其中创建一个Activity当系统通知某人正在尝试发送电子邮件时触发的,并更改AndroidManifest您订阅该Intent操作的位置。这是一个 SO 帖子,解释了您需要哪些意图过滤器:android intent-filter to listen for sent email addresses?

您将这些添加到您的Activity条目中AndroidManifest,然后当有人单击电子邮件时,它将显示您的应用程序。当有人点击它时,它会打开Activity你想要阅读的关于从意图中提取数据的特定内容。具体来说,您需要从附加组件中提取:http: //developer.android.com/reference/android/content/Intent.html#EXTRA_EMAIL 。

于 2012-07-26T22:22:40.157 回答
2

在清单中将此意图过滤器添加到您的活动中:

        <intent-filter>
            <action android:name="android.intent.action.SENDTO" />
            <data android:scheme="mailto" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.SEND" />
            <data android:mimeType="*/*" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.SEND_MULTIPLE" />
            <data android:mimeType="*/*" />
            <category android:name="android.intent.category.DEFAULT" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <data android:scheme="mailto" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
        </intent-filter>
于 2012-07-26T23:38:02.017 回答
1

在此处阅读有关意图过滤器的信息:
https ://developer.android.com/training/sharing/receive.html

于 2012-07-26T22:35:34.050 回答