2012-11-26 3 views
0

내 메일 인 텐트에 사진 미리보기를 보내려고합니다. 첨부하고 싶지 않습니다. 그냥 표시하고 싶습니다.Android에서 이메일을 통해 사진을 보내는 방법, 미리보기는되었지만 붙이지 않았습니까?

이 내 의도 :

String textToSend = getString(R.string.mailHi)+"<br><br>"+getString(R.string.mailText)+getTextToSendViaMail(); 
        Uri pngUri = null; 
        File currentShopImage = new File(Environment.getExternalStorageDirectory().toString()+"/OpenGuide/"+Integer.toString(keyId)+"_1_normal.pn_"); 

        if(currentShopImage.exists()){ 

         File pngFile = new File(currentShopImage.toString()); 
         pngUri = Uri.fromFile(pngFile); 
        } 

        Intent i = new Intent(Intent.ACTION_SEND); 
        i.setType("text/plain"); 
        //i.putExtra(Intent.EXTRA_EMAIL, new String[] { emailCim }); 
        i.putExtra(Intent.EXTRA_SUBJECT, "OpenGuide"); 
        i.putExtra(Intent.EXTRA_TEXT, Html.fromHtml(textToSend)); 
        if(pngUri!= null) 
        i.putExtra(Intent.EXTRA_STREAM, pngUri); 
        try { 
         startActivity(Intent.createChooser(i, getString(R.string.SendMail))); 
        } catch (android.content.ActivityNotFoundException ex) { 
         Toast.makeText(ShopActivity.this, getString(R.string.MailClientNotFound), Toast.LENGTH_SHORT).show(); 
        } 
내가 그런 일을 achive 수있는 방법

?

+0

사진을 보내고 싶지만 첨부하지 않으시겠습니까? 어떻게 작동합니까? – njzk2

답변

1

귀하의 문제를 이해하는 한, 이미지를 다른 텍스트로 메일 안에 넣고 싶습니다. Email 프로토콜의 말로 INLINE Attachment라고 부릅니다.

기기에 설치된 이메일 클라이언트 중 HTML 메시지 생성을 지원하지 않으므로 intents으로는이 작업을 수행 할 수 없습니다.

앱의 핵심 부분이라면 타사 API를 사용해보아야합니다. 그러한 라이브러리 중 하나는 JavaMail입니다. 이 라이브러리를 통해 html 메시지를 보낼 수는 있지만 설정에 시간이 걸릴 것입니다.

여기에 link이 있는데, 힌트를 줄 수 있습니다.

1

그러면 HTML로 생성 된 이메일 afaik를 보내야합니다.

관련 문제