출처 : http://dislab.hufs.ac.kr/lab/Android/Intent_%EC%82%AC%EC%9A%A9_%EC%98%88?rdfrom=http%3A%2F%2Fdislab.hufs.ac.kr%2Fw%2Findex.php%3Ftitle%3DAndroid%2FIntent_%25EC%2582%25AC%25EC%259A%25A9_%25EC%2598%2588%26redirect%3Dno#Camera_.EC.82.AC.EC.A7.84_.EC.B4.AC.EC.98.81
Android/Intent 사용 예
DISLab
< Android
목차[숨기기] |
내장 프로그램 띄우기
웹페이지 띄우기
Uri uri = Uri.parse("http://www.google.com"); Intent it = new Intent(Intent.ACTION_VIEW,uri); startActivity(it);
구글맵 띄우기
Uri uri = Uri.parse("geo:38.899533,-77.036476"); Intent it = new Intent(Intent.Action_VIEW,uri); startActivity(it);
구글 길찾기 띄우기
Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=출발지주소&daddr=도착지주소&hl=ko"); Intent it = new Intent(Intent.ACTION_VIEW,URI); startActivity(it);
SMS/MMS 발송
Intent it = new Intent(Intent.ACTION_VIEW); it.putExtra("sms_body", "The SMS text"); it.setType("vnd.android-dir/mms-sms"); startActivity(it); // SMS 발송 Uri uri = Uri.parse("smsto:0800000123"); Intent it = new Intent(Intent.ACTION_SENDTO, uri); it.putExtra("sms_body", "The SMS text"); startActivity(it); // MMS 발송 Uri uri = Uri.parse("content://media/external/images/media/23"); Intent it = new Intent(Intent.ACTION_SEND); it.putExtra("sms_body", "some text"); it.putExtra(Intent.EXTRA_STREAM, uri); it.setType("image/png"); startActivity(it);
이메일 발송
Uri uri = Uri.parse("mailto:xxx@abc.com"); Intent it = new Intent(Intent.ACTION_SENDTO, uri); startActivity(it); Intent it = new Intent(Intent.ACTION_SEND); it.putExtra(Intent.EXTRA_EMAIL, "me@abc.com"); it.putExtra(Intent.EXTRA_TEXT, "The email body text"); it.setType("text/plain"); startActivity(Intent.createChooser(it, "Choose Email Client")); Intent it = new Intent(Intent.ACTION_SEND); String[] tos = {"me@abc.com"}; String[] ccs = {"you@abc.com"}; it.putExtra(Intent.EXTRA_EMAIL, tos); it.putExtra(Intent.EXTRA_CC, ccs); it.putExtra(Intent.EXTRA_TEXT, "The email body text"); it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text"); it.setType("message/rfc822"); startActivity(Intent.createChooser(it, "Choose Email Client")); // extra 추가하기 Intent it = new Intent(Intent.ACTION_SEND); it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text"); it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mysong.mp3"); sendIntent.setType("audio/mp3"); startActivity(Intent.createChooser(it, "Choose Email Client")); // 첨부파일을 추가하여 메일 보내기 Intent it = new Intent(Intent.ACTION_SEND); it.putExtra(Intent.EXTRA_SUBJECT, "The email subject text"); it.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/eoe.mp3"); sendIntent.setType("audio/mp3"); startActivity(Intent.createChooser(it, "Choose Email Client"));
설치 어플 제거
Uri uri = Uri.fromParts("package", strPackageName, null); Intent it = new Intent(Intent.ACTION_DELETE, uri); startActivity(it);
APK파일을 통해 제거하기
Uri uninstallUri = Uri.fromParts("package", "xxx", null); returnIt = new Intent(Intent.ACTION_DELETE, uninstallUri); // APK파일 설치 Uri installUri = Uri.fromParts("package", "xxx", null); returnIt = new Intent(Intent.ACTION_PACKAGE_ADDED, installUri);
마켓에서 어플리케이션 검색
Uri uri = Uri.parse("market://search?q=pname:pkg_name"); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); // 패키지명은 어플리케이션의 전체 패키지명을 입력해야 합니다. // 마켓 어플리케이션 상세 화면 Uri uri = Uri.parse("market://details?id=어플리케이션아이디"); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); // 아이디의 경우 마켓 퍼블리싱사이트의 어플을 선택후에 URL을 확인해보면 알 수 있습니다.
구글 검색
Intent intent = new Intent(); intent.setAction(Intent.ACTION_WEB_SEARCH); intent.putExtra(SearchManager.QUERY,"searchString");
내장 사진 고르기 (Image Selection)
android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI
android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI
String action = Intent.ACTION_PICK; Uri uri = android.provider.MediaStore.Images.Media.INTERNAL_CONTENT_URI; Intent intent = new Intent(action, uri); startActivityForResult(intent, SELECT_IMAGE); @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == SELECT_IMAGE) { if (resultCode == Activity.RESULT_OK) { Uri selectedImage = data.getData(); // TODO Do something with the select image URI } } }
장치 사용
Camera 사진 촬영
Intent intent2 = new Intent("android.media.action.IMAGE_CAPTURE"); imgUri = Uri.fromFile(photofile); intent2.putExtra(MediaStore.EXTRA_OUTPUT, imgUri); startActivityForResult(intent2, 1);
Video 영상 녹화
Intent i = new Intent("android.media.action.VIDEO_CAPTURE"); i.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, Uri.fromFile(videofile)); i.putExtra(android.provider.MediaStore.EXTRA_VIDEO_QUALITY, 0); i.putExtra("android.intent.extra.durationLimit", 60); startActivityForResult(i, 2);
Audio 음성 녹음
Intent i = new Intent("android.provider.MediaStore.RECORD_SOUND");
음악 파일 재생
Uri playUri = Uri.parse("file:///sdcard/download/everything.mp3"); returnIt = new Intent(Intent.ACTION_VIEW, playUri);
미디어파일 플레이 하기
Intent it = new Intent(Intent.ACTION_VIEW); Uri uri = Uri.parse("file:///sdcard/song.mp3"); it.setDataAndType(uri, "audio/mp3"); startActivity(it); Uri uri = Uri.withAppendedPath( MediaStore.Audio.Media.INTERNAL_CONTENT_URI, "1"); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it);
전화 걸기
Uri uri = Uri.parse("tel:xxxxxx"); Intent it = new Intent(Intent.ACTION_DIAL, uri); startActivity(it); Uri uri = Uri.parse("tel.xxxxxx"); Intent it = new Intent(Intent.ACTION_CALL,uri); // 퍼미션을 잊지 마세요. <uses-permission id="android.permission.CALL_PHONE" />
'Android > Tip&Tech' 카테고리의 다른 글
[펌]Android Strict Mode 활용 가이드 (0) | 2012.05.04 |
---|---|
Listview 안에서 list 뒤집기 (0) | 2012.04.18 |
[펌]svn 구축 (0) | 2012.02.23 |
[펌]ViewPager 에 관한 설명 (0) | 2012.02.17 |
ProgressBar 이미지 커스터마이징하기 (0) | 2012.02.08 |