2014-12-24 4 views
-1

Предположим, что я добавил функциональность, чтобы сообщить что-то в своем приложении. После того, как пользователь сообщит об этом, я хочу, чтобы по электронной почте, отправленной мне с фиктивного адреса электронной почты (НЕ адрес электронной почты пользователя), были подробно описаны причины этого сообщения. Есть какой-либо способ сделать это? Подумайте о функции «mailTo» в PHP. Это было бы очень удобно. Я использую parse.com, если это помогает. Чтобы повторить, я хочу, чтобы АВТОМАТИЧЕСКИ отправил электронное письмо из приложения из письма DUMMY на мой адрес электронной почты. Таким образом, нет MFMailComposeViewController.Автоматическая электронная почта с фиктивного адреса через приложение iOS

+0

вы хотите отправить электронную почту своим приложением или каким-либо другим источником, как вы сказали, PHP. если вы хотите отправить автоматическую электронную почту через приложение ios, это возможно –

ответ

0

Да, вы можете достичь этого с помощью облачного кода и учетной записи mandrill. Проверьте это post.

У меня есть установки, как это:

template.js

Parse.Cloud.define("sendTemplate", function(request, response) { 
var Mandrill = require('cloud/mandrillTemplateSend.js'); 
Mandrill.initialize('SOMEKEY'); 
Mandrill.sendTemplate({ 
    template_name: "template name", 
    template_content: [{ 
     name: "TEMPLATE CONTENT NAME", 
     content: request.params.content 
    }], 
    message: { 
     to: [{ 
      email: "[email protected]", 
      name: "NAME" 
     }], 
     important: true 
    }, 
    async: false 
}, { 
    success: function (httpResponse) { 
     console.log(httpResponse); 
     response.success("Email sent!"); 
    }, 
    error: function (httpResponse) { 
     console.error(httpResponse); 
     response.error("Uh oh, something went wrong"); 
    } 
}); 
}); 

mandrillTemplateSend.js

var _apiUrl = 'mandrillapp.com/api/1.0'; 
var _apiKey = 'API KEY'; 

exports.initialize = function(apiKey) { 
    _apiKey = apiKey; 
}; 

exports.sendTemplate = function(request, response) { 
    request.key = _apiKey; 

    return Parse.Cloud.httpRequest({ 
     method: 'POST', 
     headers: { 
      'Content-Type': 'application/json' 
     }, 
     url: 'https://' + _apiUrl + '/messages/send-template.json', 
     body: request, 
     success: function(httpResponse) { 
      response.success(httpResponse); 
     }, 
     error: function(httpResponse) { 
      response.error(httpResponse); 
     } 
    }); 
}; 

Вы создать функцию в облаке и вызывать его из вашего приложения, когда это необходимо. Чтобы узнать о вызовах облачных функций, вы можете посетить синтаксическую документацию here.

Надеюсь, что это поможет!

0

Вам нужно будет настроить сервер, который может отправлять электронную почту, и сделать запрос на сервер из приложения, если вы хотите отправить электронное письмо. Это возможно несколькими способами, так как для этого существует множество API. Одним из этих API, в особенности из ваших интересов, может быть SendGrid

0

Вы можете использовать этот код, чтобы напрямую отправить электронную почту из вашего кода:

-(void)sendEmail 
{ 
    NSString *htmlString = [self createAttachment]; 
    NSDictionary *plainPart = [NSDictionary dictionaryWithObjectsAndKeys:@"text/html",kSKPSMTPPartContentTypeKey, 
           htmlString,kSKPSMTPPartMessageKey,@"8bit",kSKPSMTPPartContentTransferEncodingKey,nil]; 


NSArray *pathsImage = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
NSString *docspath = [pathsImage objectAtIndex:0]; 
pathsImage = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES); 

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
// SKPSMTPMessage *testMsg = [[SKPSMTPMessage alloc] init]; 

testMsg = [[SKPSMTPMessage alloc] init]; 

testMsg.fromEmail = [defaults objectForKey:@"fromEmail"]; 
testMsg.toEmail = [defaults objectForKey:@"toEmail"]; 
testMsg.bccEmail = [defaults objectForKey:@"bccEmal"]; 
testMsg.relayHost = [defaults objectForKey:@"relayHost"]; 
testMsg.requiresAuth = [[defaults objectForKey:@"requiresAuth"] boolValue]; 

if (testMsg.requiresAuth) { 
    testMsg.login = [defaults objectForKey:@"login"]; 

    testMsg.pass = [defaults objectForKey:@"pass"]; 
} 

testMsg.wantsSecure = [[defaults objectForKey:@"wantsSecure"] boolValue]; // 
testMsg.subject = @"Mersen Information(Final Email)"; 
testMsg.delegate = self; 

dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ 
    [testMsg send]; 
}); 

} 

Попробуйте,

Все самое лучшее !!!

Смежные вопросы