有没有办法在我的iPhone应用程序内接收电子邮件?

时间:2011-08-23 06:19:37

标签: iphone messageui

我想从电子邮件正文中获取消息并在我的iPhone应用中发出提醒。那可能吗? 我可以使用MessageUI.framework来接收iPhone应用程序内的电子邮件。

2 个答案:

答案 0 :(得分:0)

您无法使用MessageUI接收电子邮件。您必须创建自己的邮件客户端。

答案 1 :(得分:0)

您无法使用MessageUI.framework。

对于之前的项目,我创建了一个托管在我的Web服务器上的简单的基于PHP的Web服务。 Web服务与POP服务器交互。通过web服务,我可以通过stringWithContentsOfURL将所需信息下载到我的应用程序。

POP帐户信息作为加密参数传递给服务。

PHP可以轻松解析电子邮件的有趣部分。通过在应用程序外部进行电子邮件处理,可以轻松地微调电子邮件中的数据卫生。

通知可以在本地处理 - 或者在您可以使用setcronjob.com等服务自动运行PHP的服务器上处理

脚本看起来有点像这样:

<?php

$msgList = array();

# Connect to POP server
if($conn = imap_open("{pop.yourserver.dk:110/pop3}INBOX","robot@yourserver.dk", "yourpassword")) {

    # Check for messages
    $check = imap_mailboxmsginfo($conn);

    # Process each message
    for($i = 1; $i <= $check->Nmsgs; $i++) {
        $message = imap_body($conn,$i);

        # If the message matches some criteria...
        preg_match('/([0-9\/]{8}) ([0-9:]{8}).*(Niros)[^\(]*\((.+)\)/m', $message, $matches);
        if($matches) {

            # ...save it
            array_push($msgList, $matches[1]);

        }

        # Delete all messages processed and spam
        imap_delete($connection,$message);
    }

    imap_close($conn);

}

# Print put the information pulled out of the matched emails
# JSON formatted data would be easy to parse
for($i = 0; $i < 10; $i++) {
    echo array_pop($msgList);
}

echo "Last update: ".date(DATE_RFC822);

?>