【问题标题】:Open Mail.app on IPhone from webpage that's INSIDE an app从应用程序内的网页打开 iPhone 上的 Mail.app
【发布时间】:2011-07-04 12:05:51
【问题描述】:

我们的应用会在应用内从我们的网站加载个人资料页面。它们已经针对 iPhone css 进行了优化,但它们仍然是一个 html 页面。我们的 mailto 链接没有按预期工作。 单击时,没有任何反应。但是,当单击并按住(点击并按住)时,菜单会向上滑动,显示“新消息”、“创建新联系人”、“复制”等。

应该如何格式化才能让 Mail.app 自动启动?

<a class="action_bubble" target="_blank" rel="external" href="mailto:bob@bob.com">Send Email</a>

“呼叫”链接按预期工作。

<a class="action_bubble" href="tel:1234567890">Call</a>

所以,不知道该怎么办......

【问题讨论】:

    标签: iphone hyperlink mailto tel


    【解决方案1】:

    这是解决您的问题的project on GitHub。基本上,当您使用 UIWebView 控制器时,您需要决定如何使用 UIWebView 的委托处理程序来管理链接。在 Interface Builder 中,您可以让它自动识别电话号码,这可能就是您的电话号码工作的原因,它会将 http 链接识别为默认行为。但是,mailto 和其他一些特殊的 href 选项将需要手动处理。

    【讨论】:

      【解决方案2】:

      确保为您的 UIWebView 设置了“检测”属性,例如“电话”、“地址”。您可以从您的 IB 设置它。

      或来自代码

      self.webView.dataDetectorTypes = UIDataDetectorTypeAll;

      【讨论】:

      • 项目(地址、事件、链接)没有检查,所以我检查了它们,然后在设备上重建和测试,没有任何变化。电话链接有效,其他链接无效。好吧,无论如何都不像预期的那样,地图链接会在应用程序中拉出地图,而不是在地图应用程序中,如果您按住按钮足够长的时间,电子邮件将向上滑动面板......
      【解决方案3】:

      可能是您刚刚在模拟器中尝试过吗?模拟器没有邮件应用,所以打不开。在设备上尝试。我认为您的代码确实有效。

      我刚刚在设备上进行了测试:您的代码有效。

      【讨论】:

      • 另一个团队成员正在处理应用程序的开发,我只是在制作它调用的网页。看来我要获得开发许可证并开始制作 iPhone 应用了...
      • 您的代码正在运行:它是模拟器。在设备上测试,它会工作。
      • 我不在模拟器上,我在手机上的应用程序中......但很高兴知道这不是我的代码。
      【解决方案4】:

      聚会有点晚了,但我发现了以下内容:

      1. iOS 有一些奇怪的方式来处理网页内容
      2. 不要将您的电子邮件地址封装在 A 标记中,只需将其以纯文本形式放在那里
      3. 确保在您的故事板(如果使用)中,webView 已检查 Addresses 属性并且您已完成...电话号码也是如此

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-09-13
        • 1970-01-01
        • 2011-09-04
        • 2019-07-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多