

HTMLのボタンを押した後、JavaScriptを使ってメーラーを起動しようと試みてます。  
アンドロイドではサンプルを拝見して何とか起動できました。  
しかしiOSではうまく動作できず悩んでいます。

機種はiPad 2、iOS 9、コードは

[code]

    function Mailer(){
      var mail_address = 'test_Android@testes.tes';
      var mail_content = "Android_testTesttest";
    
      if (monaca.isAndroid === true) {
        window.plugins.webintent.startActivity({
          action: window.plugins.webintent.ACTION_VIEW,
          url: 'mailto:' + mail_address + '?body=' + mail_content
          },
          function() {},
          function() {}
        );
      } else if ( monaca.isIOS === true ) {
        var mailto = 'test_iOS@testes.tes';
        mailto = mailto + 
          "?subject=題目&body=本文。%0D%0A改行も試みてます。";
    
        location.href= mailto;
      }
    }
    
[/code]

いろいろなところで紹介されてるサンプルでは`location.href`で問題無いようなのですが、私の環境ではうまく動作しません。


CC BY-SA 3.0
2016-07-10T07:29:20.637
27496
2016-07-10T13:03:13.413
2016-07-10T07:52:04.757
5519
15474
question
javascript ios android monaca
monacaでiOSのみメーラーが起動できない


(iPad2と明記されているのでこちらは関係ないとは思いますが…)  
Xcode
7のSimulatorには、メーラー(「メール」(Mail)アプリ)は搭載されていないので、当然他のアプリからメーラーを開くことはできません。確認は実機で行っていますでしょうか。

あなたがiOS版で`location.href`に設定している値には(Android版の`url:`にあるような)`mailto:`スキームが含まれていません。

[code]

        var mailto = 'mailto:test_iOS@testes.tes';
    
[/code]

のように、`location.href`に設定される値の先頭に"mailto:"を追加してみてください。

Monacaは使ったことがないので、通常のUIWebViewでの確認ですが、"mailto:"が含まれていない文字列を`location.href`に設定しても、メーラーが開くことはありません。


CC BY-SA 3.0
2016-07-10T13:03:13.413
27505
2016-07-10T13:03:13.413
13972
27496
answer