2017-07-31 7 views
1

私たちのアプリでインストールされているメールクライアント(Gmail、Yandexなど)をユーザーが選択できるようにしたいと考えています。しかし、iOSはメールのみを提供するか、MFMailComposeViewControllerを内蔵しています。ユーザーに電子メールクライアントのリストを提示する方法はありますか?iOSで電子メールクライアントを選択させる

+0

[Swfitを使用してiosで電子メールクライアントを起動するにはどうすればよいですか](https://stackoverflow.com/questions/26052815/how-can-i-launch-an-email-client-on-ios- using-swfit) – Maxime

+1

iMail? iMail View Controller? –

+0

私はMailまたはMFMailComposeViewControllerを意味します – demensdeum

答えて

1

が、直接これを達成する方法はありません。さまざまなiOS電子メールクライアントで使用されているさまざまなURLをチェックし、インストールされているクライアントを特定する機能を実装することができます。たとえば、Gmailではgooglegmail://が使用されます。また、デバイスで見つかったクライアントのメニューを表示することもできます。

独自の実装を作成しない場合は、ThirdPartyMailerがこれを実行できるライブラリです。

1

Androidでの処理方法に似たものをお探しの場合は、不可能です。 Gmailでは、googlegmail://this questionから取得)を使用しているなど、一部のメールアプリはカスタムスキームをサポートしているかもしれません。

-1

あなたはこのような何かを試してみてください:iOSのは、「デフォルトアプリケーション」の概念を知らないよう

let url = NSURL(string: "mailto:[email protected]") 
UIApplication.sharedApplication().openURL(url) 
+0

ありがとうが、これはiMailを開きます。 – demensdeum

+0

したがって、利用可能なメールクライアントの一覧を持つ独自のピッカーを作成する必要があります。このリストを作成するには、もしあなたが 'canOpenUrl:'がユーザにアプリケーションをインストールしたかどうかを教えてくれるなら、各スキームを確認することができます。 – Maxime

+0

"mailto"リンクを扱うことができるすべてのアプリケーションを表示する方法があるのだろうか? – demensdeum

関連する問題