다른 앱과 상호작용
컬렉션을 사용해 정리하기
내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.
Android 앱은 일반적으로 여러 가지 활동으로 구성됩니다. 각 활동은 사용자가 지도 보기 또는 사진 촬영과 같은 특정 작업을 할 수 있는 사용자 인터페이스를 표시합니다.
사용자가 한 활동에서 다른 활동으로 이동하려면 앱은 Intent
를 사용하여 앱이 실행하려는 작업, 즉 '의도'를 정의해야 합니다. startActivity()
와 같은 메서드로 시스템에 Intent
를 전달하면, 시스템은 Intent
를 사용하여 적절한 앱 구성요소를 식별하고 시작합니다. 인텐트를 사용하면 앱이 별도의 앱에 포함된 활동을 시작할 수 있습니다.
Intent
는 특정 Activity
인스턴스를 시작하는 명시적 인텐트이거나 '사진 캡처'와 같은 의도된 작업을 처리할 수 있는 구성요소를 시작하는 암시적 인텐트일 수 있습니다.
이 가이드의 주제는 Intent
를 사용하여 다른 앱과의 기본적인 상호작용을 실행하는 방법을 보여줍니다. 다른 앱 시작, 해당 앱에서 결과 수신, 앱이 다른 앱의 인텐트에 응답할 수 있도록 하기 등을 예로 들 수 있습니다.
주제
- 다른 앱으로 사용자 보내기
- 암시적 인텐트를 만들어 작업을 실행할 수 있는 다른 앱을 시작하는 방법을 보여줍니다.
- 활동에서 결과 가져오기
- 다른 활동을 시작하고 활동에서 결과를 받는 방법을 설명합니다.
- 다른 앱에서 내 앱의 활동을 시작하도록 허용하기
- 앱이 허용한 암시적 인텐트를 선언하는 인텐트 필터를 정의하여 다른 앱에서 내 앱의 활동을 사용할 수 있도록 공개하는 방법을 보여줍니다.
- Android에서 패키지 공개 상태 필터링
- 다른 앱이 기본적으로 표시되지 않는 경우 내 앱에 표시하는 방법을 보여줍니다. Android 11(API 수준 30) 이상을 타겟팅하는 앱에만 적용됩니다.
- 패키지 공개 상태를 제한하면서 일반적인 사용 사례 처리
- 다른 앱이 내 앱에 표시되도록 앱의 매니페스트 파일을 업데이트해야 할 수 있는 여러 유형의 앱 상호작용을 보여줍니다. Android 11(API 수준 30) 이상을 타겟팅하는 앱에만 적용됩니다.
- 온디바이스 Android 컨테이너에서 로드 제한
- Play 스토어 앱이 시뮬레이션된 Android 환경 앱(온디바이스 Android 컨테이너라고도 함)에서 로드되지 않도록 제한하는 방법을 보여줍니다.
이 페이지의 주제에 관한 추가 정보는 다음을 참고하세요.
이 페이지에 나와 있는 콘텐츠와 코드 샘플에는 콘텐츠 라이선스에서 설명하는 라이선스가 적용됩니다. 자바 및 OpenJDK는 Oracle 및 Oracle 계열사의 상표 또는 등록 상표입니다.
최종 업데이트: 2025-02-10(UTC)
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["필요한 정보가 없음","missingTheInformationINeed","thumb-down"],["너무 복잡함/단계 수가 너무 많음","tooComplicatedTooManySteps","thumb-down"],["오래됨","outOfDate","thumb-down"],["번역 문제","translationIssue","thumb-down"],["샘플/코드 문제","samplesCodeIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-02-10(UTC)"],[],[],null,["# Interact with other apps\n\nAn Android app typically has several [activities](/guide/components/activities). Each activity displays a\nuser interface that lets the user perform a specific task, such as viewing a map or taking a photo.\nTo take the user from one activity to another, your app must use an [Intent](/reference/android/content/Intent) to define your app's \"intent\" to do something. When you pass an\n`Intent` to the system with a method\nsuch as [startActivity()](/reference/android/app/Activity#startActivity(android.content.Intent)),\nthe system uses the `Intent` to identify and start the appropriate app component. Using intents\neven lets your app start an activity that is contained in a separate app.\n\nAn `Intent` can be *explicit* , to start\na specific [Activity](/reference/android/app/Activity) instance,\nor *implicit*, to start any\ncomponent that can handle the intended action, such as \"capture a photo.\"\n\nThe topics in this guide show you how to use an `Intent` to perform some basic\ninteractions with other apps, such as starting another app, receiving a result from that app, and\nmaking your app able to respond to intents from other apps.\n\nTopics\n------\n\n**[Sending the user to another app](/training/basics/intents/sending)**\n: Shows you how to create implicit intents to launch other apps that can perform an\n action.\n\n**[Get a result from an activity](/training/basics/intents/result)**\n: Shows you how to start another activity and receive a result from the activity.\n\n**[Allow other apps to start your activity](/training/basics/intents/filters)**\n: Shows you how to make activities in your app open for use by other apps by defining\n intent filters that declare the implicit intents your app accepts.\n\n**[Package visibility filtering on Android](/training/basics/intents/package-visibility)**\n: Shows you how to make other apps visible to your app if they\n aren't visible by default. Applies only to apps that target Android 11\n (API level 30) or higher.\n\n**[Fulfill common use cases while\nhaving limited package visibility](/training/basics/intents/package-visibility-use-cases)**\n: Shows several types of app interactions that might require you to update\n your app's manifest file so that other apps are visible to your app.\n Applies only to apps that target Android 11 (API level 30) or higher.\n\n**[Limit loading in on-device Android containers](/training/basics/intents/limit-play-loading)**\n: Shows you how to limit your Play Store app from loading in a simulated\n Android environment app, also known as an on-device Android container.\n\nFor additional information about the topics on this page, see the following:\n\n- [Sharing simple data](/training/sharing)\n- [Sharing files](/training/secure-file-sharing)\n- [Integrating Application with Intents](http://android-developers.blogspot.com/2009/11/integrating-application-with-intents.html) blog post\n- [Intents and Intent\n Filters](/guide/components/intents-filters)"]]