첨부파일 동봉 이메일링

    Intent emailIntent = new Intent(Intent.ACTION_SEND);
    // The intent does not have a URI, so declare the "text/plain" MIME type
    emailIntent.setType(HTTP.PLAIN_TEXT_TYPE);
    emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[] {"jon@example.com"}); // recipients
    emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Email subject");
    emailIntent.putExtra(Intent.EXTRA_TEXT, "Email message text");
    emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("content://path/to/email/attachment"));
    // You can also attach multiple items by passing an ArrayList of Uris

 

브라우저를 선택하여 인터넷 웹 서핑

    Intent webIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com"));
    Intent chooser = Intent.createChooser(webIntent, "■ 브라우저 선택 ■");
                                
    if (webIntent.resolveActivity(getPackageManager()) != null) {
        startActivity(chooser);
    }  else {
		Log.d("Error", "설치된 브라우저가 없습니다.");
	}

 

 

전화 다이얼링

    Uri number = Uri.parse("tel:5551234");
    Intent callIntent = new Intent(Intent.ACTION_DIAL, number);
    if (callIntent.resolveActivity(getPackageManager()) != null) {
        startActivity(callIntent);
    }  else {
		Log.d("Error", "스마트 폰에 다이얼러가 없습니다 ");
	}

 

지도 앱

    // Map point based on address
    Uri location = Uri.parse("geo:0,0?q=1600+Amphitheatre+Parkway,+Mountain+View,+California");
    // Or map point based on latitude/longitude
    // Uri location = Uri.parse("geo:37.422219,-122.08364?z=14"); // z param is zoom level
    Intent mapIntent = new Intent(Intent.ACTION_VIEW, location);
    if (mapIntent.resolveActivity(getPackageManager()) != null) {
        startActivity(mapIntent);
    }  else {
		Log.d("Error", "지도 앱이 없습니다 ");
	}

 

사진 선택 요청하고 되돌려 받기(1)  - 요청하기

Intent intent_img = new Intent(Intent.ACTION_PICK);
intent_img.setType("image/*");
intent_img.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
intent_img.setType(MediaStore.Images.Media.CONTENT_TYPE);
startActivityForResult(Intent.createChooser(intent_img,"다중 선택은 '포토'를 선택하세요."), 1);
//  1  :   REQUEST_TAKE_ALBUM

 

사진 선택 요청하고 되돌려 받기(2)  - 되돌려 받기

    protected void onActivityResult(int requestCode, int resultCode, Intent returned_intent) {
        Log.d(TAG, "( onActivityResult )");
        super.onActivityResult(requestCode, resultCode, returned_intent);

        if (resultCode != Activity.RESULT_OK) {
            Toast.makeText(MainActivity.this, "사진 선택을 취소하였습니다.", Toast.LENGTH_SHORT).show();
            Log.i("(onActivityResult)", "requestCode = " + requestCode + " , resultCode = " + resultCode);
            return;
        }
        switch (requestCode) {
            case REQUEST_TAKE_ALBUM:
                    ArrayList imageList = new ArrayList<>();
                    // 멀티 선택을 지원하지 않는 기기에서는 getClipdata()가 없음 => getData()로 접근해야 함
                    if (returned_intent.getClipData() == null) {
                        Log.i(TAG, "1. getData / single choice " + String.valueOf(returned_intent.getData()));
                        imageList.add(String.valueOf(returned_intent.getData()));
                    } else {
                        final ClipData clipData = returned_intent.getClipData();
                        Log.i(TAG , "2. clipdata " + String.valueOf(clipData.getItemCount()));
                        if (clipData.getItemCount() < 1){
                            Toast.makeText(MainActivity.this, "  사진을 선택하세요  ", Toast.LENGTH_SHORT).show();
                            return;
                        }
                        // 멀티 선택에서 하나만 선택했을 경우
                        else if (clipData.getItemCount() == 1) {
                            forLoop = false ;
                            Thread ForThread_multi1 = new  Thread () {
                                @Override
                                public void run() {
                                        OneUri(clipData.getItemAt(0).getUri());
                                }};
                            ForThread_multi1.start() ;
                        } else if (clipData.getItemCount() > 1 && clipData.getItemCount() < 9999) {
                            show_Selected_Pictures(clipData);
                        }
                    }
            default: {
                Toast.makeText(MainActivity.this, "  여기는 사진 되돌려 받기만 처리하고 다른 기능은 처리하지 않음  ", Toast.LENGTH_SHORT).show();
                break;
            }
        }
    }
Posted by LODE_RUNNER
,