【问题标题】:how do i launch my app via an email attachment我如何通过电子邮件附件启动我的应用程序
【发布时间】:2011-02-17 15:37:24
【问题描述】:

以下内容会导致预览按钮与电子邮件附件一起显示,它实际上会启动应用程序。现在的问题是我的应用程序显示为我的联系人中项目的查看器。当您选择一个联系人时,您会看到一个“使用完成操作”弹出窗口,其中列出了我的应用程序以及“查看联系人”。显然,mimeType 导致了这种情况,但我无法让它以任何其他方式工作。附件基本上是自定义数据,不打算由任何其他应用打开。

<intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:mimeType="*/*" />
    <data android:path="custom.extension" />
</intent-filter>            

【问题讨论】:

    标签: android mime-types attachment


    【解决方案1】:

    我会添加一个自定义方案,然后您可以在您的电子邮件正文中使用常规链接...

    android:scheme="customSchemeName"

    【讨论】:

    • 电子邮件附件没有方案。
    • 我在建议一个替代方案......我不知道它是什么类型的数据,如果它很短,也许它可以包含在带有自定义方案的链接的 URL 中。这不适用于通用的“附件”,但如果您将链接放在电子邮件底部,它可能看起来很相似。
    【解决方案2】:

    附件基本上是自定义数据,不打算由任何其他应用程序打开。

    这不会很好。

    要么:

    • 重新设计您的应用程序,以便您的电子邮件附件能够可靠地使用 MIME 类型(由电子邮件客户端确定,这意味着如果它不是某种普遍理解的文件类型,它将无法工作),或者

    • 不要使用电子邮件附件,而是使用从 Web 下载的文件的链接,您可以在其中控制 MIME 类型

    因此,例如,作为电子邮件附件的 PDF 工作得相当好,因为大多数电子邮件客户端都知道 PDF,因此在发送附件时发送application/pdf MIME 类型。

    一旦您解决了将 MIME 类型可靠地提供给 Android 的问题(通过附件或通过链接),然后更新您的 &lt;intent-filter&gt; 以使用该 MIME 类型。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-20
      • 1970-01-01
      • 2011-02-11
      • 1970-01-01
      • 1970-01-01
      • 2012-05-01
      相关资源
      最近更新 更多