Hành động trong ứng dụng cho phép người dùng chạy chức năng trong ứng dụng Android của bạn bằng cách hỏi Trợ lý Google hoặc sử dụng lối tắt Android do Trợ lý đề xuất. Dưới đây là các bước chính để mở rộng ứng dụng Android của bạn bằng Hành động trong ứng dụng:
- Xác định chức năng trong ứng dụng để kích hoạt và so khớp ý định tích hợp (BII).
- Cung cấp thông tin chi tiết về phương thức thực hiện cho BII.
- Đẩy lối tắt cho Hành động trong ứng dụng đến Trợ lý.
- Xem trước Hành động trong ứng dụng trên thiết bị thử nghiệm.
- Tạo một bản phát hành thử nghiệm của ứng dụng.
- Yêu cầu xem xét và triển khai Hành động trong ứng dụng.
Bạn có thể tuỳ ý xác định các lối tắt động và cung cấp cho Trợ lý để có thể đề xuất cho người dùng. Hãy dùng một ứng dụng mẫu và tạo Hành động trong ứng dụng bằng cách làm theo hướng dẫn có ở Lớp học lập trình về Hành động trong ứng dụng.
Yêu cầu
Trước khi bắt đầu phát triển Hành động trong ứng dụng, vui lòng đáp ứng các yêu cầu sau:
- Bạn phải có Tài khoản Google có quyền truy cập vào Google Play Console.
- Bạn phải xuất bản ứng dụng của mình lên Cửa hàng Google Play, vì Hành động trong ứng dụng chỉ dành cho các ứng dụng được xuất bản ở đó. Ngoài ra, hãy đảm bảo rằng ứng dụng của bạn không nhằm mục đích sử dụng trong hồ sơ công việc, vì Hành động trong ứng dụng không được hỗ trợ bởi Managed Google Play.
- Bạn cần kiểm thử Hành động trong ứng dụng một thiết bị thực hoặc thiết bị ảo.
- Bạn cần dùng phiên bản Android Studio mới nhất.
- Bạn phải sử dụng cùng một Tài khoản Google để đăng nhập vào Android Studio, ứng dụng Google trên thiết bị kiểm thử và Google Play Console.
- Bạn phải thiết lập Trợ lý trên thiết bị kiểm thử và kiểm tra Trợ lý bằng cách nhấn và giữ nút Home.
So khớp ý định tích hợp với chức năng của ứng dụng
Xác định chức năng mà người dùng có thể muốn chuyển sang bằng cách nói yêu cầu của họ trong ứng dụng Android của bạn và xem lại tài liệu tham khảo về ý định tích hợp để tìm ý định tích hợp thích hợp cho trường hợp sử dụng của bạn. Các BII mô hình hoá truy vấn của người dùng cho các tác vụ mà họ muốn thực hiện trong ứng dụng. Vì vậy, hãy tìm BII phù hợp với chức năng chính và luồng người dùng trong ứng dụng của bạn.
Có các BII phổ biến mà hầu hết mọi ứng dụng Android đều có thể sử dụng, chẳng hạn như mở rộng
tìm kiếm trong ứng dụng cho Trợ lý bằng actions.intent.GET_THING
BII hoặc cho phép người dùng chạy các tính năng cụ thể của ứng dụng thông qua giọng nói
triển khai BII actions.intent.OPEN_APP_FEATURE
.
Ngoài ra còn có một số BII cho phép những trường hợp sử dụng theo ngành dọc hoặc theo danh mục cụ thể. Để
ví dụ: ứng dụng tập thể dục có thể sử dụng actions.intent.START_EXERCISE
BII.
Để đảm bảo người dùng có trải nghiệm tuyệt vời và tránh bị phê duyệt chậm trễ, hãy đảm bảo từng BII bạn triển khai đều phù hợp với chức năng trong ứng dụng của bạn.
Hành động trong ứng dụng hoạt động bằng cách bắt đầu ý định Android từ ứng dụng Trợ lý để đưa người dùng đến thẳng nội dung cụ thể trong ứng dụng của bạn. Bạn có thể xác định các ý định để khởi chạy hoạt động một cách tường minh bằng cách chỉ định các trường targetClass
và targetPackage
. Nếu ứng dụng của bạn đã triển khai các URL liên kết sâu trong Android, thì bạn có thể định cấu hình ý định sử dụng đường liên kết sâu để thực hiện nhiệm vụ. Để biết thêm thông tin, vui lòng xem phần Kiểm thử đường liên kết sâu đến hoạt động của bạn.
Cung cấp thông tin về phương thức thực hiện cho ý định tích hợp
Hầu hết việc tạo Hành động trong ứng dụng đều khai báo một chức năng trong tệp tài nguyên shortcuts.xml
của ứng dụng Android, tại đây bạn sẽ chỉ định BII đã chọn và tiến hành thực hiện ý định tương ứng. BII mô phỏng truy vấn của người dùng cho một tác vụ, còn quá trình thực hiện ý định sẽ cung cấp cho Trợ lý thông tin về cách thực hiện tác vụ đó.
Trong tệp shortcuts.xml
, BII được biểu thị dưới dạng phần tử <capability>
và mỗi phương thức thực hiện được biểu thị dưới dạng phần tử <intent>
:
<shortcuts>
<capability android:name="actions.intent.START_EXERCISE">
<intent
android:action="android.intent.action.VIEW"
android:targetPackage="com.example.app"
android:targetClass="com.example.app.browse">
<parameter
android:name="exercise.name"
android:key="exercise_name">
</parameter>
</intent>
</capability>
Đối với hầu hết các BII, bạn trích xuất tham số ý định từ truy vấn của người dùng dựa trên các thực thể schema.org. Sau đó, ứng dụng của bạn sử dụng các BII đó
để hướng người dùng đến chức năng đã chọn. Ví dụ:
trước
mã ánh xạ tham số BII exercise.name
với exercise_name
Android
Tham số intent
.
Nếu đang thực hiện hành động bằng đường liên kết sâu, bạn cần dùng trường urlTemplate
để xác định URL liên kết sâu mà Trợ lý tạo ra:
<shortcuts>
<capability android:name="actions.intent.START_EXERCISE">
<intent android:action="android.intent.action.VIEW">
<url-template android:value="myexerciseapp://start{?exercise_name}" />
<parameter android:name="exercise.name"
android:key="exercise_name"
android:mimeType="text/*">
</parameter>
</intent>
</capability>
</shortcuts>
Để biết thông tin quan trọng về cách thêm Hành động trong ứng dụng vào tệp shortcuts.xml
, vui lòng tham khảo phần Tạo shortcuts.xml
. Trang đó cũng mô tả cách chỉ định các giá trị tham số mà ứng dụng của bạn dự kiến.
Triển khai ý định tích hợp GET_THING
Nếu ứng dụng của bạn chứa chức năng tìm kiếm, bạn bắt buộc phải triển khai BII actions.intent.GET_THING
cho chức năng đó. Sau đó, Trợ lý có thể chuyển tiếp người dùng đến chức năng tìm kiếm của ứng dụng cho kết quả trong ứng dụng khi họ thực hiện các truy vấn như "OK Google, hãy tìm ExampleThing trên ExampleApp.".
Trong tệp shortcuts.xml
, hãy triển khai <capability>
cho BII actions.intent.GET_THING
như khi bạn triển khai mọi BII khác. Bạn có thể sử dụng nhiều phương thức thực hiện cho GET_THING
miễn là bạn cung cấp ít nhất một phương thức thực hiện lệnh chuyển truy vấn của người dùng đến chức năng tìm kiếm của ứng dụng.
Dưới đây là ví dụ về cách thêm BII actions.intent.GET_THING
trong shortcuts.xml
:
<capability android:name="actions.intent.GET_THING">
<intent
android:targetPackage="com.example.myapp"
android:targetClass="com.example.myapp.MySearchActivity">
<parameter android:name="thing.name" android:key="query" />
</intent>
</capability>
Trong Activity
tìm kiếm của bạn, hãy trích xuất cụm từ tìm kiếm từ dữ liệu bổ sung của intent
rồi truyền cụm từ tìm kiếm đó đến chức năng tìm kiếm của ứng dụng. Trong đoạn mã trên, cụm từ tìm kiếm (được truyền dưới dạng khoá query
) ánh xạ tới tham số BII "thing.name"
. Sau đó, thực hiện việc tìm kiếm với các truy vấn và hiển thị kết quả trong giao diện người dùng.
Không bắt buộc: Đẩy lối tắt cho Hành động trong ứng dụng đến Trợ lý
Sau khi bạn xác định chức năng cho hành động của mình, người dùng có thể dễ dàng khởi chạy hành động của bạn bằng cách nói những câu như "OK Google, hãy đặt pizza trên ExampleApp." Trợ lý có thể đề xuất lối tắt Android đối với các hành động của bạn cho người dùng vào thời điểm thích hợp, giúp họ khám phá và phát lại các hành động của bạn. Trợ lý có thể đề xuất cả lối tắt động và tĩnh.
Để đẩy các lối tắt động đến Trợ lý, vui lòng sử dụng thư viện Tích hợp lối tắt của Google (Google Shortcuts Integration). Thư viện Jetpack này cho phép Trợ lý nhận lối tắt của bạn và đề xuất cho người dùng vào thời điểm thích hợp.
Để biết thêm thông tin, vui lòng xem phần Đẩy lối tắt động tới Trợ lý.
Xem trước Hành động trong ứng dụng
Trong quá trình phát triển và thử nghiệm, hãy sử dụng Trình bổ trợ Trợ lý Google cho Android Studio để kiểm thử Hành động trong ứng dụng phù hợp với ứng dụng của bạn. Trình bổ trợ này tạo bản xem trước cho Hành động trong ứng dụng trong Trợ lý cho Tài khoản Google của bạn. Với công cụ kiểm thử, bạn có thể kiểm thử các phương thức thực hiện trên thiết bị thử nghiệm thực hoặc trình mô phỏng bằng cách cung cấp BII với tham số đầu vào mà bạn muốn nhận được từ người dùng.
Khi xem trước Hành động trong ứng dụng, bạn có thể kích hoạt các truy vấn bằng giọng nói trên thiết bị đó. Chức năng này chỉ áp dụng đối với những truy vấn được liệt kê trong tệp tham chiếu BII cho Hành động trong ứng dụng. Chỉ sử dụng chức năng kích hoạt bằng giọng nói cho mục đích minh hoạ thay vì để kiểm thử thông thường.
Kiểm thử ứng dụng ở chế độ nháp bằng cách dùng công cụ cho nhà phát triển dành cho Google Play Console trước khi gửi ứng dụng đi xem xét. Để biết thêm thông tin về cách sử dụng Google Play Console để triển khai bản nháp của ứng dụng, hãy xem phần Chuẩn bị và khởi chạy bản phát hành.
Tạo một bản phát hành kiểm thử
Khi đã sẵn sàng kiểm thử Hành động trong ứng dụng với những người kiểm thử bổ sung, hãy tạo bản phát hành thử nghiệm nội bộ hoặc khép kín cho ứng dụng của bạn. Theo mặc định, người kiểm thử bản phát hành thử nghiệm nội bộ và bản phát hành thử nghiệm khép kín của bạn có thể truy cập vào các Hành động trong ứng dụng đã được xem xét và phê duyệt.
Để cấp quyền truy cập kiểm thử vào tất cả Hành động trong ứng dụng, bao gồm cả các hành động không được phê duyệt, hãy hướng dẫn người kiểm thử tham gia nhóm Chương trình phát triển hành động trong ứng dụng trên Google Groups. Thành viên của cộng đồng này có quyền truy cập vào tất cả Hành động trong ứng dụng ở trạng thái đóng và bản phát hành thử nghiệm nội bộ mà không phải tạo bản xem trước bằng công cụ kiểm tra hành động trong ứng dụng. Sau khi tham gia nhóm, có thể mất tới 3 giờ thì họ mới có quyền truy cập.
Yêu cầu xem xét và triển khai Hành động trong ứng dụng
Người dùng ứng dụng đã xuất bản hoặc thử nghiệm công khai không thể sử dụng Hành động trong ứng dụng
cho đến khi được xem xét và phê duyệt. Quy trình xem xét Hành động trong ứng dụng không ảnh hưởng đến trạng thái xem xét và triển khai ứng dụng Android của bạn trong Google Play. Ngay cả khi
ứng dụng bạn gửi sẽ được phê duyệt và xuất bản lên Cửa hàng Play.
shortcuts.xml
có thể đang được Google xem xét. Hành động trong ứng dụng không phù hợp với
người dùng cuối cho đến khi quy trình xem xét đó được phê duyệt.
Khi bạn triển khai ứng dụng, Hành động trong ứng dụng sẽ vẫn được kích hoạt. Tuy nhiên, các phiên bản triển khai lại sẽ được Google xem xét. Nếu phiên bản mới là không hoạt động đúng cách hoặc chứa lỗi vi phạm chính sách, Google có quyền vô hiệu hoá Hành động trong ứng dụng cho ứng dụng.
Để gửi tính năng Hành động trong ứng dụng cho việc xem xét, hãy làm như sau:
Chấp nhận điều khoản dịch vụ về Hành động trong ứng dụng trong Google Play Console (Cài đặt nâng cao > Hành động trong ứng dụng):
Tải ứng dụng của bạn (chứa
shortcuts.xml
) lên Google Play Console như bình thường để xuất bản.Sau khi bạn tải ứng dụng lên Play Console, Google sẽ liên hệ với bạn theo địa chỉ email trong tài khoản Play Console để cung cấp thêm thông tin về trạng thái xem xét Hành động trong ứng dụng của bạn. Bạn cũng có thể liên hệ với Nhóm hỗ trợ nhà phát triển của Trợ lý nếu có thắc mắc liên quan đến trạng thái xem xét Hành động trong ứng dụng. Trong biểu mẫu liên hệ, hãy cung cấp Mã gói ứng dụng rồi chọn App Action review (Xem xét Hành động trong ứng dụng) ở hộp chọn How can we help you? (Chúng tôi có thể giúp gì cho bạn?).
Không bắt buộc: Kiểm thử đường liên kết sâu của hoạt động
Để sử dụng đường liên kết sâu nhằm khởi chạy một Activity
bằng Hành động trong ứng dụng, Activity
đó phải được thiết lập bằng các URL liên kết sâu và có bộ lọc ý định tương ứng trong tệp kê khai ứng dụng Android.
Để kiểm thử xem các hoạt động của bạn có thể truy cập được và có thể được kích hoạt bằng Hành động trong ứng dụng qua các liên kết sâu hay không, hãy chạy lệnh adb
sau:
$ adb shell am start -a android.intent.action.VIEW -d "AppLinksURL"
Ví dụ:
$ adb shell am start -a android.intent.action.VIEW -d "https://www.example.com/deeplink"
Nếu hoạt động của bạn không khởi chạy chính xác bằng lệnh adb
, hãy kiểm tra các mục sau:
- Trong tệp kê khai ứng dụng của bạn, hoạt động có
android:exported=true
để có thể khởi chạy hoạt động đó bằng cách sử dụng ý định từ Trợ lý Google. - Nếu bạn sử dụng URL liên kết ứng dụng, hãy làm theo từng bước trong bài viết Xử lý đường liên kết trong ứng dụng Android.
Chính sách về Hành động trong ứng dụng
Hành động trong ứng dụng phải tuân thủ các chính sách cụ thể để giúp đảm bảo rằng người dùng kích hoạt các hành động đó sẽ nhận được trải nghiệm như mong đợi. Hãy tham khảo các chính sách này trước khi gửi ứng dụng của bạn để cung cấp trải nghiệm tốt nhất cho người dùng và tránh phải chờ đợi hoặc bị từ chối xem xét trên Cửa hàng Play.
Chuyển người dùng đến nội dung mà họ mong đợi
Ý định tích hợp (BII) và/hoặc tham số của Hành động trong ứng dụng chỉ được phép hướng người dùng đến hành động có liên quan và đúng như dự định của người dùng. Chẳng hạn như nội dung trong ứng dụng, nội dung trang web hoặc thông tin được cho thấy dưới dạng lát cắt hoặc tiện ích, miễn là mang lại trải nghiệm đúng như người dùng mong muốn.
Ví dụ: việc triển khai BII
START_EXERCISE
giúp người dùng bắt đầu một bài tập thuộc một loại nhất định, ví dụ: chạy hoặc bơi. Ngoại lệ duy nhất đối với chính sách này là khi BIIOPEN_APP_FEATURE
hướng người dùng đến màn hình chính của ứng dụng.Triển khai các BII có liên quan đến Hành động trong ứng dụng
Các BII được triển khai phải liên quan trực tiếp đến nội dung của ứng dụng và của Google.
Ví dụ: nếu ứng dụng của bạn nằm trong danh mục Thông tin liên lạc trên Cửa hàng Play, không triển khai BII
START_EXERCISE
. được đề xuất cho các ứng dụng thuộc danh mục Heath và Fitness.Triển khai các ý định tuỳ chỉnh có liên quan
Các truy vấn được xác định cho ý định tuỳ chỉnh có liên quan đến nội dung và chức năng của ứng dụng. Ví dụ về hành vi có thể vi phạm chính sách này: tạo ý định
custom.action.intent.GET_RECIPE
với mẫu truy vấn được liên kết "Cho tôi xem công thức làm món burrito" đối với một ứng dụng trong danh mục Vận tải trên Cửa hàng Play.