2016-02-10 170 views
2

我使用这个插件:http://ngcordova.com/docs/plugins/emailComposer/过滤器应用

这是我的角度代码:

$scope.report = function(){ 
    var CEO_EMAIL_ADDRESS = '[email protected]'; 

    $cordovaEmailComposer.isAvailable().then(function() { 
     $cordovaEmailComposer.open({ 
      to: CEO_EMAIL_ADDRESS, 
      subject: langTranslateService.getData('REPORT_A_PROBLEM'), 
      body: '', 
      isHtml: false 
     }); 
    }); 
}; 

我只需要在手机电子邮件将被打开或选择只从电子邮件应用程序选择。

为什么选项中有“bluetooth,dropbox ...”?

我可以改变它吗?

popup options

回答

1

据插件规范中here,你应该能够提供一个app选项将open方式来指定一个特定的应用程序打开的电子邮件草稿(仅写了Android的时间)。

首先别名应该用于期望的应用程序进行像这样:

cordova.plugins.email.addAlias('outlook', 'com.microsoft.android.outlook'); 

本示例为Outlook应用创建一个别名outlook。第二个参数是应用程序的包名,我可以通过安装像Package Name Viewer这样的插件来找到它。

,如果应用程序是可用的isAvailable功能的以下过载您可以验证:

$cordovaEmailComposer.open({ 
    app: 'outlook', 
    to: CEO_EMAIL_ADDRESS, 
    subject: langTranslateService.getData('REPORT_A_PROBLEM'), 
    body: '', 
    isHtml: false 
}); 

cordova.plugins.email.isAvailable(
    'outlook', function (isAvailable, withScheme) { 
     // isAvailable indicates if sending emails is available at all 
     // withScheme is true if the desired app/scheme is available. When false the fallback of choosing an approriate app is applied 
    } 
); 

然后你可以在下面的例子中提供此别名open方法类似

现在草稿应该在Outlook中可用时打开。试一试!