실사용 예제 - 외주프로젝트01 - info에서 네이버 맵에 주소 검색시 사용했고 웹뷰로 연결됨
보내는 곳
binding.hospitalInformationFragmentTvHospitalAddress ->{
val intent = Intent(requireContext(),HospitalAddressActivity::class.java)
intent.putExtra(Constants.HOSPITAL_ADDRESS,binding.hospitalInformationFragmentTvHospitalAddress.text)
startActivity(intent)
}
받는 곳
class HospitalAddressActivity:BaseActivity<ActivityHospitalAddressBinding>(ActivityHospitalAddressBinding::inflate) {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val hospitalAddressQuery = intent.getStringExtra(Constants.HOSPITAL_ADDRESS)
val naverMapBaseUrl = "https://m.map.naver.com/search2/search.naver?query="
binding.hospitalAddressWv.loadUrl("${naverMapBaseUrl}${hospitalAddressQuery}")
binding.hospitalAddressWv.settings.javaScriptEnabled = true
}
}
클릭시 이메일 넘어가기
Uri.Parse 모음 찾음 java를 단순 변환시킨거라서 다시 보길 바람(아래에 자바 원본 있음)
//웹페이지 띄우기
//웹페이지 띄우기
val uri = Uri.parse("http://www.google.com")
val it = Intent(Intent.ACTION_VIEW, uri)
startActivity(it)
//구글맵 띄우기
//구글맵 띄우기
val uri = Uri.parse("geo:38.899533,-77.036476")
val it = Intent(Intent.Action_VIEW, uri)
startActivity(it)
//구글 길찾기 띄우기
//구글 길찾기 띄우기
val uri =
Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en")
val it = Intent(Intent.ACTION_VIEW, URI)
startActivity(it)
//전화걸기
//전화걸기
val uri = Uri.parse("tel:xxxxxx")
val it = Intent(Intent.ACTION_DIAL, uri)
startActivity(it)
//웹페이지 띄우기
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=startLat%20startLng&daddr=endLat%20endLng&hl=en");
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);
//don't forget add this config:<uses-permission id="android.permission.CALL_PHONE" />
//send sms/mms
//call sender program
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);
//email 발송
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_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.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);
//audio 재생
Uri playUri = Uri.parse("file:///sdcard/download/everything.mp3");
returnIt = new Intent(Intent.ACTION_VIEW, playUri);
//첨부파일 추가하여 메일 보내기
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.parse("market://search?q=pname:pkg_name");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
//어플의 패키지명은 전체를 입력
//마켓 어플 상세 화면
Uri uri = Uri.parse("market://details?id=app_id");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
//where app_id is the application ID, find the ID
//by clicking on your application on Market home
//page, and notice the ID from the address bar
//google 검색
Intent intent = new Intent();
intent.setAction(Intent.ACTION_WEB_SEARCH);
intent.putExtra(SearchManager.QUERY,"searchString")
startActivity(intent);
참고 : http://snipt.net/Martin/tag/android
http://developer.android.com/reference/android/net/Uri.html
Uri | Android Developers
developer.android.com
https://dev-joo.tistory.com/18
https://jizard.tistory.com/170
[안드로이드] 이메일 인텐트 보내기 (Intent ACTION_SEND Email)
앱을 개발하다보면 설정창 같은 곳에서 이메일을 전송받아야할때가 있다. 아래의 코드를 사용해서 이메일을 보낼 수 있으며, 내용도 미리 정해둘 수 있다. 정해두고 싶지 않다면 설정안해도 된
jizard.tistory.com
'Android > Kotlin' 카테고리의 다른 글
Maven 설치할 때 오류 (0) | 2021.07.28 |
---|---|
Fragment에서 뒤로가기 버튼 클릭시 프래그먼트 종료 (0) | 2021.07.25 |
sharedPreference 초기화 (0) | 2021.07.24 |
fragment, Activity reload, 데이터 변경 시 화면 갱신 (0) | 2021.07.24 |
. (0) | 2021.07.21 |