Tương tác với ứng dụng khác
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Ứng dụng Android thường có một số hoạt động. Mỗi hoạt động cho thấy một giao diện người dùng cho phép thực hiện một thao tác cụ thể (chẳng hạn như xem bản đồ hoặc chụp ảnh).
Để đưa người dùng từ hoạt động này sang hoạt động khác, ứng dụng phải sử dụng Intent
để xác định "ý định" sẽ thực hiện một hoạt động nào đó. Khi chuyển Intent
đến hệ thống bằng một phương thức như startActivity()
, hệ thống sẽ sử dụng Intent
để xác định và khởi động thành phần ứng dụng thích hợp. Thậm chí, việc sử dụng ý định còn cho phép ứng dụng bắt đầu một hoạt động nằm trong một ứng dụng riêng biệt.
Intent
có thể bắt đầu một thực thể Activity
cụ thể một cách rõ ràng, hoặc bắt đầu bất cứ thành phần nào có thể xử lý hành động theo ý định một cách ngầm ẩn, chẳng hạn như "chụp ảnh".
Các chủ đề trong tài liệu này hướng dẫn bạn cách sử dụng Intent
để thực hiện một số tương tác cơ bản với các ứng dụng khác (chẳng hạn như: khởi động ứng dụng khác, nhận kết quả từ ứng dụng đó, khiến ứng dụng của bạn phản hồi ý định của các ứng dụng khác).
Chủ đề
- Chuyển người dùng đến một ứng dụng khác
- Hướng dẫn bạn cách tạo ý định ngầm ẩn để chạy những ứng dụng khác có thể thực hiện hành động.
- Nhận kết quả từ một hoạt động
- Hướng dẫn cách bắt đầu một hoạt động khác và nhận kết quả từ hoạt động đó.
- Cho phép ứng dụng khác bắt đầu hoạt động của bạn
- Hướng dẫn cách khiến ứng dụng khác có thể sử dụng hoạt động trong ứng dụng của bạn bằng cách xác định bộ lọc ý định có chức năng khai báo ý định ngầm ẩn được ứng dụng chấp nhận.
- Lọc phạm vi xem gói trên Android
- Hướng dẫn cách ứng dụng của bạn xem được ứng dụng khác nếu chúng không xuất hiện theo mặc định. Chỉ áp dụng cho những ứng dụng nhắm đến Android 11 (API cấp 30) trở lên.
- Đáp ứng các trường hợp sử dụng phổ biến trong khi vẫn có chế độ hiển thị gói hạn chế
- Hướng dẫn một số kiểu tương tác với ứng dụng mà có thể bạn cần phải cập nhật tệp kê khai của ứng dụng để các ứng dụng khác xuất hiện trước ứng dụng của bạn.
Chỉ áp dụng cho những ứng dụng nhắm đến Android 11 (API cấp 30) trở lên.
- Giới hạn tải trong vùng chứa Android trên thiết bị
- Hướng dẫn bạn cách hạn chế việc tải ứng dụng trên Cửa hàng Play trong một ứng dụng mô phỏng môi trường Android, còn gọi là vùng chứa Android trên thiết bị.
Để biết thêm thông tin về các chủ đề trên trang này, hãy xem:
Nội dung và mã mẫu trên trang này phải tuân thủ các giấy phép như mô tả trong phần Giấy phép nội dung. Java và OpenJDK là nhãn hiệu hoặc nhãn hiệu đã đăng ký của Oracle và/hoặc đơn vị liên kết của Oracle.
Cập nhật lần gần đây nhất: 2025-02-10 UTC.
[[["Dễ hiểu","easyToUnderstand","thumb-up"],["Giúp tôi giải quyết được vấn đề","solvedMyProblem","thumb-up"],["Khác","otherUp","thumb-up"]],[["Thiếu thông tin tôi cần","missingTheInformationINeed","thumb-down"],["Quá phức tạp/quá nhiều bước","tooComplicatedTooManySteps","thumb-down"],["Đã lỗi thời","outOfDate","thumb-down"],["Vấn đề về bản dịch","translationIssue","thumb-down"],["Vấn đề về mẫu/mã","samplesCodeIssue","thumb-down"],["Khác","otherDown","thumb-down"]],["Cập nhật lần gần đây nhất: 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)"]]