2012-09-05 1 views
7

옵션을 표시하는 대신 기본 이메일 클라이언트를 열고 싶습니다. 나는 시도했지만 아무도 도와 줄 수 없다. 옵션 enter image description hereAndroid - 이메일 클라이언트를 직접 여는 방법

을 보여

final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); 

     emailIntent.setType("text/html"); 
     emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "My Allergy Journal");  
     emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, Html.fromHtml("<small>"+sb.toString()+"</small>"));         
     startActivity(Intent.createChooser(emailIntent, "Email:")); 

그건하지만 바로 다음 기본 전자 메일 클라이언트를 열려면 :

는 다음 코드를 사용했다.

enter image description here

답변

8

gmail, facebook, email 등 원하는 어떤 의도로든 열려면 다음 코드를 사용할 수 있습니다. gmail을 열려면 "gmail"을 입력하십시오. "face"를 전달하십시오. if 너에게 페이스 북을 열고 싶다

Intent intent = new Intent(android.content.Intent.ACTION_SEND); 
intent.setType("text/html"); 
List<ResolveInfo> resInfo = getPackageManager().queryIntentActivities(intent, 0); 

if (!resInfo.isEmpty()) 
{ 
    for (ResolveInfo info : resInfo) 
    { 
    if (info.activityInfo.packageName.toLowerCase().contains(type) || info.activityInfo.name.toLowerCase().contains(type)) 
    { 
      intent.putExtra(android.content.Intent.EXTRA_TEXT, htmlBody); 
      intent.setPackage(info.activityInfo.packageName); 
      startActivity(Intent.createChooser(intent, getResources().getString(R.string.share_send_text))); 
     } 
} 
+0

android 이메일 클라이언트를 열고 싶습니다. 이 대신에 나는 유형 대신에 어떤 문자열을 사용 했습니까? – naresh

+0

형식 필드에 "전자 메일"을 사용하십시오 ........ 작동 여부를 알려주십시오 – AndroidDev

+0

고마워요 – naresh

14

프레임 형식의 String String URI="mailto:?subject=" + subject + "&body=" + body;

Intent intent = new Intent(Intent.ACTION_VIEW); 
Uri data = Uri.parse(URI); 
intent.setData(data); 
startActivity(intent); 

이는 사용자가 선택한 기본 전자 메일 프로그램을 엽니 다.

Linkify 이렇게하면됩니다. 원하는 경우 it's source code을 확인하십시오.

+0

그것은 단지 나를 위해 작동한다. – Bwire

+0

charm처럼 작동! –