Đăng nhập với Hướng dẫn bắt đầu của Amazon dành cho Android
Đăng nhập với Amazon: Hướng dẫn Bắt đầu dành cho Android
Bản quyền © 2016 Amazon.com, Inc., hoặc các chi nhánh của nó. Đã đăng ký Bản quyền. Amazon và biểu trưng Amazon là thương hiệu của Amazon.com, Inc. hoặc các chi nhánh của Amazon. Tất cả các nhãn hiệu khác không thuộc sở hữu của Amazon là tài sản của chủ sở hữu tương ứng.
Bắt đầu cho Android
Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách thêm Đăng nhập bằng Amazon vào ứng dụng Android của bạn. Sau khi hoàn thành hướng dẫn này, bạn sẽ có nút Đăng nhập bằng Amazon trong ứng dụng của mình để cho phép người dùng đăng nhập bằng thông tin đăng nhập Amazon của họ.
Cài đặt Công cụ dành cho nhà phát triển Android
Đăng nhập bằng Amazon SDK dành cho Android sẽ giúp bạn thêm Đăng nhập bằng Amazon vào ứng dụng Android của mình. Chúng tôi khuyên bạn nên sử dụng Đăng nhập bằng Amazon SDK dành cho Android từ dev.amazon.com với Android Studio. Tuy nhiên, bạn cũng có thể sử dụng Eclipse với plugin ADT. Để biết các bước về cách cài đặt Android Studio và thiết lập SDK Android, hãy xem Nhận Android SDK trên developer.android.com.
Khi Android SDK được cài đặt, hãy tìm Trình quản lý SDK ứng dụng trong cài đặt Android của bạn. Để phát triển Đăng nhập bằng Amazon, bạn phải sử dụng Trình quản lý SDK để cài đặt Nền tảng SDK cho Android 2.2 trở lên (API phiên bản 8). Nhìn thấy Thêm gói SDK trên dev.android.com để biết thêm thông tin về cách sử dụng SDK
Sau khi cài đặt SDK, hãy thiết lập Thiết bị ảo Android (AVD) để chạy các ứng dụng của bạn. Xem Quản lý Thiết bị ảo trên developer.android.com để biết hướng dẫn về cách thiết lập thiết bị ảo.
Khi môi trường phát triển của bạn được thiết lập, bạn có thể Cài đặt Đăng nhập bằng Amazon SDK cho Android or Chạy Sampứng dụng le, như mô tả dưới đây.
Cài đặt Đăng nhập bằng Amazon SDK cho Android
Đăng nhập bằng Amazon SDK cho Android có hai gói. Đầu tiên chứa thư viện Android và tài liệu hỗ trợ. Thứ hai chứa dưới dạngampứng dụng cho phép người dùng đăng nhập và hiển thị thông tin chuyên môn của họfile dữ liệu.
Nếu bạn chưa cài đặt Android SDK hoặc Công cụ phát triển Android, hãy xem Cài đặt Công cụ dành cho nhà phát triển Android phần trên.
- Tải về khóa kéo và trích xuất files vào một thư mục trên ổ cứng của bạn.
Bạn sẽ thấy một tài liệu và một thư viện thư mục con. - Mở doc/index.html ĐẾN view Đăng nhập bằng API Android của Amazon
- Nhìn thấy Cài đặt Đăng nhập với Thư viện Amazon, để được hướng dẫn về cách thêm thư viện và tài liệu vào Android
Khi Đăng nhập bằng Amazon SDK cho Android được cài đặt, bạn có thể Tạo thông tin đăng nhập mới với Amazon Dự án, sau đó Đăng ký bằng Đăng nhập với Amazon .
Chạy Sampứng dụng le
Để chạy sampứng dụng le, nhập samptập tin vào không gian làm việc AndroidStudio (nếu bạn đang sử dụng Eclipse, bạn cũng phải thêm kho khóa gỡ lỗi tùy chỉnh vào không gian làm việc. Xem phần Thêm gỡ lỗi tùy chỉnh Kho khóa trong Eclipse phần bên dưới). Khóa API mà sampViệc sử dụng tập tin ứng dụng yêu cầu không gian làm việc để sử dụng kho khóa đi kèm với sample. Nếu kho khóa tùy chỉnh không được cài đặt, người dùng sẽ không thể đăng nhập bằng sample. Kho khóa sẽ được chọn tự động nếu bạn đang sử dụng AndroidStudio.
- Tải về SampleLoginWithAmazonAppForAndroid-src.zip và trích xuất files vào một thư mục khó của bạn
- Khởi động Android Studio và chọn Mở một dự án Android Studio hiện có
- Duyệt đến SampleĐăng nhậpVớiAmazonApp thư mục có được sau khi giải nén zip đã tải xuống file trong Bước
- Từ Xây dựng menu, nhấp vào Tạo dự ánvà chờ đợi dự án
- Từ Chạy menu, nhấp vào Chạy và sau đó nhấp vào SampleĐăng nhậpVớiAmazonApp.
- Chọn trình giả lập hoặc thiết bị Android được kết nối và nhấp vào Chạy.
Thêm kho khóa gỡ lỗi tùy chỉnh trong Eclipse
Nếu bạn đang sử dụng Eclipse, hãy làm theo hướng dẫn bên dưới để thêm kho khóa gỡ lỗi tùy chỉnh:
- Trong Sở thích hộp thoại, chọn Android Và Xây dựng.
- Ở cạnh Phong tục Kho khóa gỡ lỗi, nhấp vào Duyệt.
- Điều hướng đến sample thư mục ứng dụng và chọn 3p.keystore, và sau đó nhấp vào OK.
Đăng ký bằng Đăng nhập với Amazon
Trước khi bạn có thể sử dụng Đăng nhập bằng Amazon trên webtrang web hoặc trong ứng dụng di động, bạn phải đăng ký ứng dụng với Đăng nhập bằng Amazon. Ứng dụng Đăng nhập bằng Amazon của bạn là đăng ký có chứa thông tin cơ bản về doanh nghiệp của bạn và thông tin về từng webtrang web hoặc ứng dụng di động bạn tạo hỗ trợ Đăng nhập bằng Amazon. Thông tin doanh nghiệp này được hiển thị cho người dùng mỗi khi họ sử dụng Đăng nhập bằng Amazon trên webtrang web hoặc ứng dụng di động. Người dùng sẽ thấy tên ứng dụng, logo của bạn và liên kết đến chính sách bảo mật của bạn. Các bước này minh họa cách đăng ký Đăng nhập bằng ứng dụng Amazon và thêm ứng dụng Android vào tài khoản đó.
Xem các chủ đề sau:
- Đăng ký Đăng nhập của bạn với Ứng dụng Amazon
- Đăng ký ứng dụng Android của bạn
- Thêm ứng dụng Android cho Amazon Appstore
- Thêm ứng dụng Android không cần Appstore
- Chữ ký ứng dụng Android và khóa API
- Xác định chữ ký ứng dụng Android
- Truy xuất khóa API Android
Đăng ký Đăng nhập của bạn với Ứng dụng Amazon
- Đi đến https://login.amazon.com.
- Nếu bạn đã đăng ký Đăng nhập với Amazon trước đây, hãy nhấp vào Bảng điều khiển ứng dụng. Nếu không, hãy nhấp vào Đăng ký. Bạn sẽ được chuyển hướng đến Trung tâm người bán, nơi xử lý đăng ký đăng ký Đăng nhập với Nếu đây là lần đầu tiên bạn sử dụng Trung tâm người bán, bạn sẽ được yêu cầu thiết lập tài khoản Trung tâm người bán.
- Nhấp chuột Đăng ký ứng dụng mới. Các Đăng ký ứng dụng của bạn biểu mẫu sẽ xuất hiện:
a. Trong Đăng ký ứng dụng của bạn biểu mẫu, nhập một Tên và một Sự miêu tả cho ứng dụng của bạn.
Các Tên là tên hiển thị trên màn hình đồng ý khi người dùng đồng ý chia sẻ thông tin với ứng dụng của bạn. Tên này áp dụng cho Android, iOS và webphiên bản trang web của ứng dụng của bạn.
b. Nhập một Thông báo về quyền riêng tư URL cho ứng dụng của bạn
Các Thông báo về quyền riêng tư URL là vị trí của chính sách bảo mật của công ty hoặc ứng dụng của bạn (đối vớiamplà, http://www.example.com/privacy.html). Liên kết này được hiển thị cho người dùng trên màn hình đồng ý.
c. Nếu bạn muốn thêm một Hình ảnh Logo cho ứng dụng của bạn, hãy nhấp vào Duyệt và tìm hình ảnh phù hợp.
Biểu trưng này được hiển thị trên màn hình đăng nhập và đồng ý để đại diện cho doanh nghiệp của bạn hoặc webđịa điểm. Logo sẽ bị thu nhỏ chiều cao xuống 50 pixel nếu cao hơn 50 pixel; không có giới hạn về chiều rộng của logo - Nhấp chuột Cứu. Của bạn sampViệc đăng ký sẽ trông tương tự như thế này:
Sau khi cài đặt ứng dụng cơ bản của bạn được lưu, bạn có thể thêm cài đặt cho các mục đích cụ thể webcác trang web và ứng dụng di động sẽ sử dụng Đăng nhập này bằng tài khoản Amazon.
Đăng ký ứng dụng Android của bạn
Để đăng ký Ứng dụng Android, bạn có lựa chọn đăng ký ứng dụng thông qua Amazon Appstore (Thêm ứng dụng Android cho Amazon Appstore, P. 8) hoặc trực tiếp bằng Đăng nhập bằng Amazon (Thêm Android Ứng dụng không có Appstore, P. 9). Khi ứng dụng của bạn được đăng ký, bạn sẽ có quyền truy cập vào khóa API sẽ cấp cho ứng dụng của bạn quyền truy cập vào dịch vụ ủy quyền Đăng nhập bằng Amazon.
Ghi chú: Nếu bạn định sử dụng Amazon Device Messaging trong ứng dụng Android của mình, vui lòng liên hệ lwa- support@amazon.com với:
- Địa chỉ email của tài khoản Amazon bạn đã sử dụng để đăng ký Đăng nhập bằng Amazon.
- Địa chỉ email của tài khoản Amazon bạn đã sử dụng để đăng ký Amazon Appstore (nếu khác).
- Tên trên tài khoản Seller Central của bạn. (Trên Trung tâm người bán, nhấp vào Cài đặt> Thông tin tài khoản> Thông tin người bánvà sử dụng Tên hiển thị).
- Tên trên tài khoản nhà phát triển Amazon Appstore của bạn. (Trên trang Phân phối ứng dụng dành cho thiết bị di động, hãy nhấp vào Cài đặt > Công ty Chuyên nghiệpfile và sử dụng Tên nhà phát triển hoặc tên công ty).
Thêm ứng dụng Android cho Amazon Appstore
Các bước sau sẽ thêm ứng dụng Amazon Appstore vào Đăng nhập bằng tài khoản Amazon của bạn:
- Từ màn hình Ứng dụng, nhấp vào Cài đặt Android. Nếu bạn đã đăng ký một ứng dụng Android, hãy tìm Thêm khóa API nút trong Cài đặt Android
Các Chi tiết ứng dụng Android biểu mẫu sẽ xuất hiện: - Lựa chọn Đúng trả lời cho câu hỏi "Ứng dụng này có được phân phối thông qua Amazon Appstore không?"
- Nhập vào Nhãn ứng dụng Android của bạn. Đây không phải là tên chính thức của ứng dụng của bạn. Nó chỉ đơn giản xác định ứng dụng Android cụ thể này trong số các ứng dụng và webcác trang web đã đăng ký Đăng nhập của bạn với ứng dụng Amazon.
- Thêm của bạn ID cửa hàng ứng dụng Amazon.
- Nếu bạn tự ký ứng dụng của mình, hãy thêm thông tin tự ký. Điều này sẽ cho phép bạn lấy khóa API trong quá trình phát triển mà không cần sử dụng trực tiếp Appstore:
a. Nếu ứng dụng của bạn không được ký thông qua Amazon Appstore, hãy chọn Có để trả lời câu hỏi “Ứng dụng này có tự ký không?”
Các Chi tiết ứng dụng Android hình thức sẽ mở rộng:
b. Nhập của bạn Tên gói hàng.
Tên này phải khớp với tên gói của dự án Android của bạn. Để xác định tên gói của Dự án Android của bạn, hãy mở dự án bằng công cụ dành cho nhà phát triển Android mà bạn chọn.
Mở AndroidManifest.XML trong Trình khám phá gói và chọn Biểu hiện chuyển hướng. Mục đầu tiên là tên Gói.
c. Vào ứng dụng Chữ ký.
Đây là giá trị băm SHA-256 được sử dụng để xác minh ứng dụng của bạn. Chữ ký phải ở dạng 32 cặp thập lục phân cách nhau bằng dấu hai chấm (ví dụ:amplê: 01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01: 3:45:67:89:a b:cd:ef). Nhìn thấy Chữ ký ứng dụng Android và khóa API cho các bước bạn có thể sử dụng để trích xuất chữ ký từ dự án của mình. - Nhấp chuột Cứu.
Nếu các phiên bản khác nhau của ứng dụng của bạn có chữ ký hoặc tên gói khác nhau, chẳng hạn như đối với một hoặc nhiều phiên bản thử nghiệm và phiên bản sản xuất, thì mỗi phiên bản yêu cầu Khóa API riêng. Từ Cài đặt Android của ứng dụng của bạn, hãy nhấp vào Thêm khóa API để tạo các khóa bổ sung cho ứng dụng của bạn (một khóa cho mỗi phiên bản).
Chữ ký ứng dụng Android và khóa API
Chữ ký ứng dụng là giá trị băm SHA-256 được áp dụng cho mọi ứng dụng Android khi ứng dụng được tạo. Amazon sử dụng chữ ký ứng dụng để tạo Khóa API của bạn. Khóa API cho phép các dịch vụ của Amazon nhận ra ứng dụng của bạn. Nếu bạn sử dụng Amazon Appstore để ký ứng dụng của mình, khóa API sẽ tự động được cung cấp. Nếu bạn không sử dụng Amazon Appstore, bạn sẽ cần quản lý khóa API của mình theo cách thủ công.
Chữ ký ứng dụng được lưu trữ trong kho khóa. Nói chung, đối với các ứng dụng Android, có kho khóa gỡ lỗi và kho khóa phát hành. Kho khóa gỡ lỗi được tạo bởi plugin Công cụ phát triển Android dành cho Eclipse và được sử dụng theo mặc định. Bạn có thể tìm thấy vị trí của kho khóa gỡ lỗi trong Eclipse bằng cách nhấp vào Cửa sổ, và sau đó chọn Tùy chọn > Android > Bản dựng. Từ màn hình đó, bạn cũng có thể thêm kho khóa gỡ lỗi của riêng mình. Đối với Android Studio, từ Xây dựng thực đơn, chọn Chỉnh sửa loại bản dựng, sau đó đi đến Ký kết và tìm kho khóa gỡ lỗi trong Cửa hàng File cánh đồng.
Kho khóa phát hành thường được tạo khi bạn xuất ứng dụng Android của mình để tạo APK đã ký file.
Thông qua quá trình xuất, nếu bạn đang tạo kho khóa phát hành mới, bạn sẽ chọn vị trí của nó. Qua
mặc định nó sẽ được đặt ở cùng vị trí với KeyStore gỡ lỗi mặc định của bạn.
Nếu bạn đã đăng ký ứng dụng của mình bằng cách sử dụng chữ ký gỡ lỗi trong quá trình phát triển, bạn sẽ phải thêm cài đặt Android mới vào ứng dụng của mình khi bạn sẵn sàng phát hành ứng dụng. Cài đặt ứng dụng mới phải sử dụng chữ ký từ kho khóa phát hành.
Nhìn thấy Ký ứng dụng của bạn trên developer.android.com để biết thêm thông tin.
Xác định Chữ ký ứng dụng Android
- Nếu bạn có APK đã ký file:
a. Giải nén APK file và trích xuất CERT.RSA. (Bạn có thể đổi tên tiện ích mở rộng APK thành ZIP nếu cần).
b. Từ dòng lệnh, hãy chạy:công cụ khóa -printcert -file CERT.RSA Bàn phím nằm ở thùng rác thư mục cài đặt Java của bạn.
- Nếu bạn có một kho khóa file:
a. Từ dòng lệnh, hãy chạy:keytool -list -v -alias -cửa hàng khóafiletên> Công cụ chính nằm trong thư mục bin của bản cài đặt Java của bạn. Bí danh là tên của khóa dùng để ký ứng dụng.
b. Nhập mật khẩu cho khóa và nhấn Đi vào. - Dưới Dấu vân tay Chứng chỉ, sao chép SHA256 giá trị.
Truy xuất Khóa API Android
Khi bạn đã đăng ký cài đặt Android và cung cấp chữ ký ứng dụng, bạn có thể truy xuất khóa API từ trang đăng ký cho ứng dụng Đăng nhập bằng Amazon của mình. Bạn sẽ cần đặt khóa API đó vào một file trong dự án Android của bạn. Cho đến khi bạn làm như vậy, ứng dụng sẽ không được phép giao tiếp với dịch vụ ủy quyền Đăng nhập bằng Amazon.
- Đi đến https://login.amazon.com.
- Nhấp chuột Bảng điều khiển ứng dụng.
- Trong Ứng dụng hộp ở bên trái, chọn của bạn
- Tìm ứng dụng Android của bạn trong Cài đặt Android (Nếu bạn chưa đăng ký ứng dụng Android, hãy xem Thêm ứng dụng Android cho Amazon Appstore).
- Nhấp chuột Tạo giá trị khóa API. Một cửa sổ bật lên sẽ hiển thị khóa API của bạn. Để sao chép khóa, hãy nhấp vào Chọn tất cả để chọn toàn bộ
Ghi chú: Giá trị khóa API một phần dựa vào thời điểm nó được tạo. Do đó, (các) Giá trị khóa API tiếp theo mà bạn tạo có thể khác với giá trị ban đầu. Bạn có thể sử dụng bất kỳ Giá trị khóa API nào trong ứng dụng của mình vì chúng đều hợp lệ. - Nhìn thấy Thêm khóa API của bạn vào dự án của bạn để biết hướng dẫn về cách thêm khóa API vào Android của bạn
Tạo Đăng nhập với Dự án Amazon
Trong phần này, bạn sẽ học cách tạo một dự án Android mới để Đăng nhập với Amazon, định cấu hình dự án và thêm mã vào dự án để đăng nhập người dùng bằng Đăng nhập với Amazon. Chúng tôi sẽ mô tả các bước cho Android Studio, nhưng bạn có thể áp dụng các bước tương tự cho bất kỳ công cụ phát triển IDE hoặc Android nào mà bạn chọn.
Xem các chủ đề sau:
- Tạo thông tin đăng nhập mới với dự án Amazon
- Cài đặt Đăng nhập với Thư viện Amazon
- Bật Hỗ trợ nội dung để đăng nhập bằng Thư viện Amazon
- Đặt quyền mạng cho ứng dụng của bạn
- Thêm khóa API của bạn vào dự án của bạn
- Loại bỏ chữ Sample Kho khóa gỡ lỗi tùy chỉnh ứng dụng
- Xử lý các thay đổi cấu hình cho hoạt động của bạn
- Thêm hoạt động ủy quyền vào dự án của bạn
- Thêm thông tin đăng nhập bằng nút Amazon vào ứng dụng của bạn
- Xử lý Nút Đăng nhập và Nhận Profile Dữ liệu
- Kiểm tra Đăng nhập của Người dùng khi Khởi động
- Xóa trạng thái ủy quyền và đăng xuất người dùng
- Gọi các phương thức Trình quản lý ủy quyền của Amazon một cách đồng bộ
Tạo thông tin đăng nhập mới với dự án Amazon
Nếu bạn chưa có dự án ứng dụng để sử dụng Đăng nhập với Amazon, hãy làm theo hướng dẫn bên dưới để tạo một dự án ứng dụng. Nếu bạn có một ứng dụng hiện có, hãy chuyển đến Cài đặt Đăng nhập với Thư viện Amazon .
- Phóng Công cụ phát triển Android.
- Từ File thực đơn, chọn Mới Và Dự án.
- Nhập một Tên ứng dụng Và Tên công ty cho bạn
- Nhập vào Đơn đăng ký và tên công ty tương ứng với tên gói bạn đã chọn khi đăng ký ứng dụng của mình bằng Đăng nhập với Amazon.
Nếu bạn chưa đăng ký ứng dụng của mình, hãy chọn một Tên gói và sau đó làm theo hướng dẫn trong Đăng ký bằng Đăng nhập với Amazon sau khi bạn tạo dự án của mình. Nếu tên gói ứng dụng của bạn không khớp với tên gói đã đăng ký, cuộc gọi Đăng nhập bằng Amazon của bạn sẽ không thành công. - Chọn một SDK tối thiểu bắt buộc của API 8: Android 2 (Froyo) trở lên và nhấp vào Kế tiếp.
- Chọn loại hoạt động bạn muốn tạo và nhấp vào Kế tiếp.
- Điền vào các chi tiết liên quan và nhấp vào Hoàn thành.
Bây giờ bạn sẽ có một dự án mới trong không gian làm việc của mình mà bạn có thể sử dụng để gọi Đăng nhập với Amazon.
Cài đặt Đăng nhập với Thư viện Amazon
Nếu bạn chưa tải xuống Đăng nhập bằng Amazon SDK cho Android, hãy xem Cài đặt Đăng nhập với SDK Amazon dành cho Android (trang 4).
- Với dự án của bạn đang mở trong Công cụ dành cho nhà phát triển Android, trong Nhà thám hiểm dự án, nhấp chuột phải vào của bạn Dự án.
- Nếu một thư mục có tên thư viện chưa có sẵn, hãy tạo
- Sao chép đăng nhập-bằng-amazon-sdk.jar file từ File Hệ thống, sau đó dán nó vào thư viện thư mục trong dự án/ứng dụng của bạn.
- Nhấp chuột phải đăng nhập-bằng-amazon-sdk.jarvà kiểm tra Thêm làm thư viện
Bật Hỗ trợ nội dung để đăng nhập bằng Thư viện Amazon trong Eclipse
Để kích hoạt tính năng hỗ trợ hỗ trợ nội dung Eclipse trong một dự án Android, bạn cần sử dụng một .của cải file. Để biết thêm thông tin về hỗ trợ nội dung, hãy xem Hỗ trợ nội dung/mã trênhelp.eclipse.org.
Để kích hoạt tính năng hỗ trợ hỗ trợ nội dung Eclipse trong một dự án Android, bạn cần sử dụng một .của cải file. Để biết thêm thông tin về hỗ trợ nội dung, hãy xem Hỗ trợ nội dung/mã trênhelp.eclipse.org.
- In Trình khám phá Windows, điều hướng đến tài liệu thư mục dành cho Đăng nhập bằng Amazon SDK dành cho Android và sao chép thư mục vào
- Với dự án của bạn đang mở, hãy truy cập Trình khám phá gói và chọn thư viện Nhấp chuột Biên tập từ menu chính và chọn Dán. Bây giờ bạn sẽ có một libs\docs thư mục.
- Chọn thư viện Nhấp chuột File từ menu chính và chọn Mới VàFile.
- Trong Mới File hộp thoại, nhập đăng nhập bằng-amazon-sdk.jar.properties và nhấp vào Hoàn thành.
- Eclipse sẽ mở đăng nhập bằng-amazon-sdk.jar.properties trong trình soạn thảo văn bản. Trong trình soạn thảo văn bản, thêm dòng sau vào file:
doc=tài liệu - Từ File menu, nhấp vào Cứu.
- Bạn có thể cần phải khởi động lại Eclipse để những thay đổi có hiệu lực
Đặt quyền mạng cho ứng dụng của bạn
Để ứng dụng của bạn sử dụng Đăng nhập bằng Amazon, ứng dụng phải truy cập Internet và truy cập thông tin trạng thái mạng. Ứng dụng của bạn phải xác nhận các quyền này trong tệp kê khai Android của bạn, nếu chưa có.
GHI CHÚ: Các bước quy trình dưới đây dành riêng cho việc thêm các quyền trong Eclipse. Nếu đang sử dụng Android Studio hoặc IDE khác, bạn có thể bỏ qua tất cả các bước được đánh số bên dưới. Thay vào đó, hãy sao chép các dòng mã hiển thị bên dưới ảnh chụp màn hình và dán chúng vào AndroidManifest.xml file, bên ngoài khối ứng dụng.
- In Bưu kiện Nhà thám hiểm, nhấp đúp xml.
- Trên Quyền tab, nhấp chuột Thêm vào.
- Lựa chọn Quyền sử dụng và nhấp vào OK.
- Bên phải của Quyền, tìm thấy Thuộc tính cho quyền sử dụng
- Trong Tên hộp, nhập sự cho phép. INTERNET hoặc chọn nó từ trình đơn thả xuống.
- Trên Quyền tab, nhấp chuột Thêm vào
- Lựa chọn Quyền sử dụng và nhấp vào OK.
- Trong Tên hộp, nhập quyền.ACCESS_NETWORK_STATE hoặc chọn nó từ trình đơn thả xuống
- Từ File menu, nhấp vào Cứu.
Quyền trong bảng kê khai của bạn bây giờ sẽ có các giá trị sau:
Trong AndroidManifest.xml tab, bây giờ bạn sẽ thấy các mục này trong phần tử bảng kê khai:
Thêm khóa API của bạn vào dự án của bạn
Khi bạn đăng ký ứng dụng Android của mình bằng Đăng nhập với Amazon, bạn sẽ được chỉ định một khóa API. Đây là số nhận dạng mà Trình quản lý ủy quyền của Amazon sẽ sử dụng để xác định ứng dụng của bạn đối với dịch vụ ủy quyền Đăng nhập bằng Amazon. Nếu bạn đang sử dụng Amazon Appstore để ký ứng dụng của mình, Appstore sẽ tự động cung cấp khóa API. Nếu bạn không sử dụng Amazon Appstore, Amazon Authorization Manager sẽ tải giá trị này trong thời gian chạy từ api_key.txt file trong tài sản thư mục.
- Nếu bạn chưa có Khóa API của mình, hãy làm theo hướng dẫn trong Truy xuất Khóa API Android (trang 11).
- Với dự án ADT của bạn đang mở, từ File menu, nhấp vào Mới và chọn Văn bản không có tiêu đề File. Bây giờ bạn sẽ có một cửa sổ soạn thảo văn bản file được đặt tên Chưa có tiêu đề 1. Thêm khóa API của bạn vào văn bản
- Từ File menu, nhấp vào Lưu dưới dạng.
- Trong Lưu dưới dạng hộp thoại, chọn tài sản thư mục dự án của bạn làm thư mục mẹ. Vì File tên, đi vào văn bản.
Loại bỏ chữ Sample Kho khóa gỡ lỗi tùy chỉnh ứng dụng
GHI CHÚ: Bước này chỉ được yêu cầu nếu bạn đang sử dụng Eclipse; nếu bạn đang sử dụng Android Studio, hãy bỏ qua phần này.
Nếu bạn đã cài đặt Đăng nhập bằng Amazon cho Android sampvào cùng không gian làm việc mà bạn đang sử dụng cho ứng dụng Android của mình, bạn có thể đặt kho khóa gỡ lỗi tùy chỉnh cho không gian làm việc. Bạn cần xóa kho khóa gỡ lỗi tùy chỉnh để sử dụng khóa API của riêng bạn.
- Từ menu chính, nhấp vào Cửa sổ và chọn Sở thích.
- Trong Sở thích hộp thoại, chọn Android Và Xây dựng.
- Xóa sạch Phong tục gỡ lỗi kho khóa
- Nhấp chuột OK.
Xử lý các thay đổi cấu hình cho hoạt động của bạn
Nếu người dùng thay đổi hướng màn hình hoặc thay đổi trạng thái bàn phím của thiết bị trong khi họ đang đăng nhập, nó sẽ nhắc khởi động lại hoạt động hiện tại. Khởi động lại này sẽ loại bỏ màn hình đăng nhập bất ngờ. Để ngăn chặn điều này, bạn nên đặt hoạt động sử dụng phương thức ủy quyền để xử lý các thay đổi cấu hình đó theo cách thủ công. Điều này sẽ ngăn không cho khởi động lại hoạt động.
- In Bưu kiện Nhà thám hiểm, nhấp đúp xml.
- Trong Ứng dụng phần, hãy tìm hoạt động sẽ xử lý Đăng nhập bằng Amazon (ví dụ:amplà, Hoạt động chủ yêu).
- Thêm thuộc tính sau vào hoạt động bạn đã đặt ở Bước 2:
android: configChanges = ”keyboard | keyboardHidden | direction” Hoặc đối với API 13 trở lên:
android: configChanges = ”keyboard | keyboardHidden | direction | screenSize” - Từ File menu, nhấp vào Cứu
Bây giờ, khi thay đổi hướng bàn phím hoặc thiết bị xảy ra, Android sẽ gọi onConfigurationĐã thay đổi phương pháp cho hoạt động của bạn. Bạn không cần triển khai chức năng này trừ khi có một khía cạnh nào đó của những thay đổi cấu hình này mà bạn muốn xử lý cho ứng dụng của mình
Khi người dùng nhấp vào nút Đăng nhập bằng Amazon, API sẽ khởi chạy web trình duyệt để hiển thị trang đăng nhập và đồng ý cho người dùng. Để hoạt động trình duyệt này hoạt động, bạn phải thêm AuthorizationActivity vào bảng kê khai của mình.
- In Bưu kiện Nhà thám hiểm, nhấp đúp xml.
- Trong Ứng dụng phần này, hãy thêm đoạn mã sau, thay thế “com.example.app” bằng tên gói của bạn cho ứng dụng này:
<hoạt động android:name=
“com.amazon.identity.auth.device.authorization.AuthorizationActivity” android:theme=”@android:style/Theme.NoDisplay” android:allowTaskReparenting=”true” android:launchMode=”singleTask”>
<hành động android:name=”android.intent.action.VIEW” />
<dữ liệu
android:host=”com.example.app” android:scheme=”amzn” />
ứng dụng của bạn. Phần này cung cấp các bước để tải xuống hình ảnh Đăng nhập chính thức bằng Amazon và ghép nối nó với Android ImageButton.
- Thêm một ImageButton tiêu chuẩn vào ứng dụng của bạn.
Để biết thêm thông tin về các nút Android và lớp ImageButton, hãy xem Nút trên developer.android.com. - Cung cấp cho nút của bạn một id.
Trong phần khai báo XML của nút, hãy đặt thuộc tính android:id thành @+id/login_with_amazon. Dành cho người yêu cũamplê:android: id = ”@ + id / login_with_amazon” - Chọn một hình ảnh nút.
Tham khảo Đăng nhập của chúng tôi với Amazon Nguyên tắc về phong cách để biết danh sách các nút mà bạn có thể sử dụng trong ứng dụng của mình. Tải xuống bản sao của LWA_Android.zip file. Trích xuất bản sao của nút ưa thích của bạn cho mỗi mật độ màn hình mà ứng dụng của bạn hỗ trợ (xxhdpi, xhdpi, hdpi, mdpi hoặc tvdpi). Để biết thêm thông tin về việc hỗ trợ nhiều mật độ màn hình trong Android, hãy xem Bố cục thay thế trong chủ đề “Hỗ trợ nhiều màn hình” ondeveloper.android.com. - Sao chép hình ảnh nút thích hợp filecho dự án của bạn.
Đối với mỗi mật độ màn hình mà bạn hỗ trợ (xhdpi, hdpi, mdpi hoặc ldpi), hãy sao chép nút đã tải xuống vào res / drawable thư mục cho mật độ màn hình đó. - Khai báo hình ảnh nút.
Trong phần khai báo XML của nút, hãy đặt thuộc tính android:src thành tên của nút bạn đã chọn. Dành cho người yêu cũamplê:android: src = ”@ drawable / btnlwa_gold_loginwithamazon.png” 6. Tải ứng dụng của bạn và xác minh rằng nút hiện có hình ảnh Đăng nhập bằng Amazon. Bạn nên xác minh rằng nút hiển thị đúng cho từng mật độ màn hình mà bạn hỗ trợ.
Phần này giải thích cách gọi ủy quyền và getProfile API để đăng nhập người dùng và truy xuất chuyên nghiệp của họfile dữ liệu. Điều này bao gồm việc tạo trình nghe onClick cho nút Đăng nhập bằng Amazon trong phương thức onCreate của ứng dụng.
- Thêm Đăng nhập bằng Amazon vào dự án Android của bạn. Nhìn thấy Cài đặt Đăng nhập với Thư viện Amazon .
- Nhập Đăng nhập bằng API Amazon vào nguồn của bạn
Để nhập Đăng nhập bằng API Amazon, hãy thêm các câu lệnh nhập sau vào nguồn của bạn file:nhập com.amazon.identity.auth.device.AuthError; nhập khẩu
com.amazon.identity.auth.device.authorization.api.
AmazonAuthorizationManager; nhập khẩu
com.amazon.identity.auth.device.authorization.api. Trình nghe ủy quyền; nhập com.amazon.identity.auth.device.authorization.api.AuthzConstants; - Khởi tạo AmazonAuthorizationManager.
Bạn sẽ cần khai báo một Trình quản lý ủy quyền của Amazon biến và tạo một thể hiện mới của lớp. Tạo một phiên bản mới chỉ yêu cầu bối cảnh ứng dụng hiện tại của bạn và một gói trống. Nơi tốt nhất để khởi tạo Trình quản lý ủy quyền của Amazon đang ở trong khiTạo phương thức Hoạt động của bạn. Dành cho người yêu cũamplê: - Tạo một AuthorizeLiistener.
ủy quyềnListener triển khai giao diện AuthorizatioinListener và sẽ xử lý kết quả của ủy quyền. Nó chứa ba phương thức: oinSuccess, onError, và trên Cancelil. Mỗi phương thức nhận được một Bundle hoặc một Lỗi xác thực sự vật.lớp riêng AuthorizeListener triển khai AuthorizationListener{
/ * Việc cấp phép đã hoàn tất thành công. * /
@Ghi đè
public void onSuccess(Phản hồi theo gói) {
}
/* Đã xảy ra lỗi trong quá trình cấp phép ứng dụng.
*/
@Ghi đè
public void onError (AuthError ae) {
}
/* Việc ủy quyền đã bị hủy trước khi nó có thể được hoàn thành. */
@Ghi đè
public void onCancel(Gói nguyên nhân) {
}
} - Gọi AmazonAuthorizationManager.authorize.
Trong trênClick xử lý cho nút Đăng nhập bằng Amazon, hãy gọi ủy quyền để nhắc người dùng đăng nhập và ủy quyền cho ứng dụng của bạn.
Phương thức này có nhiệm vụ ủy quyền cho khách hàng bằng một trong các cách sau:- Chuyển sang trình duyệt hệ thống và cho phép khách hàng đăng nhập và đồng ý với yêu cầu
- Chuyển sang web view trong bối cảnh an toàn, để cho phép khách hàng đăng nhập và đồng ý với yêu cầu
Ngữ cảnh bảo mật cho số 2 này hiện được cung cấp dưới dạng ứng dụng Mua sắm Amazon trên thiết bị Android. Các thiết bị do Amazon tạo ra chạy Fire OS (ví dụ:ample Kindle Fire, Fire Phone và Fire TV) luôn sử dụng tùy chọn này ngay cả khi không có ứng dụng Mua sắm Amazon trên thiết bị. Do đó, nếu khách hàng đã đăng nhập vào ứng dụng Amazon Mua sắm, API này sẽ bỏ qua trang đăng nhập, dẫn đến Đăng nhập một lần trải nghiệm cho khách hàng.
Khi ứng dụng của bạn được cấp phép, nó được cấp phép cho một hoặc nhiều bộ dữ liệu được gọi là phạm vi. Tham số đầu tiên là một mảng phạm vi bao gồm dữ liệu người dùng mà bạn đang yêu cầu từ Đăng nhập bằng Amazon. Lần đầu tiên người dùng đăng nhập vào ứng dụng của bạn, họ sẽ được cung cấp danh sách dữ liệu bạn đang yêu cầu và được yêu cầu phê duyệt. Đăng nhập bằng Amazon hiện hỗ trợ ba phạm vi: chuyên nghiệpfile, chứa tên người dùng, địa chỉ email và id tài khoản Amazon; chuyên nghiệpfile:tên người dùng, chỉ chứa id tài khoản Amazon; và mã bưu điện, chứa mã zip / mã bưu điện của người dùng.
Cách tốt nhất để gọi ủy quyền là không đồng bộ, do đó bạn không phải chặn chuỗi giao diện người dùng hoặc tạo chuỗi công việc của riêng mình. Để gọi ủy quyền không đồng bộ, truyền một đối tượng hỗ trợ Giao diện AuthorizationListener là tham số cuối cùng:mAuthManager AmazonAuthorizationManager riêng tư; @Ghi đè
được bảo vệ void onCreate(Gói savedInstanceState) {
super.onCreate (saveInstanceState);
mAuthManager = AmazonAuthorizationManager mới (cái này, Bundle.EMPTY);// Tìm nút có ID login_with_amazon
// và thiết lập trình xử lý nhấp chuột
mLoginButton = (Nút) tìmViewById(R.id.login_with_amazon);
mLoginButton.setOnClickListener(OnClickListener mới() {
@Ghi đè
public void onClick (View v) {
mAuthManager.authorize(
Chuỗi mới []{“profile","mã bưu điện"},
Bundle.EMPTY, AuthorizeListener mới());
}
});
} - Tạo một Chuyên nghiệpfileNgười nghe.
Chuyên nghiệpfileNgười nghe là tên của chúng tôi cho một lớp thực hiện Trình nghe API giao diện và sẽ xử lý kết quả của getProfile gọi. Trình nghe API chứa hai phương pháp: onSuccess và onError (nó không hỗ trợ trênHủy bởi vì không có cách nào để hủy bỏ một getProfile gọi). onSuccess nhận được một đối tượng Bundle với profile dữ liệu, trong khi onError nhận được một Lỗi xác thực đối tượng với thông tin về lỗi.lớp riêng ProfileTrình nghe triển khai APIListener{ /* getProfile hoàn thành thành công. */ @Ghi đè
public void onSuccess(Phản hồi theo gói) {}
/* Đã xảy ra lỗi trong quá trình cố gắng lấy bản profile. */ @Ghi đè
public void onError (AuthError ae) {
}
} - Thực hiện onSuccess cho bạn Ủy quyềnListener.
In trênThành công, gọi AmazonAuthorizationManager.getProfile để lấy khách hàng chuyên nghiệpfile. getProfile, như ủy quyền, sử dụng giao diện người nghe không đồng bộ. Vì getProfile, giao diện đó là APIListener, không phảiAuthorizationListener.
/* Việc ủy quyền đã hoàn tất thành công. */ @Ghi đè
public void onSuccess(Phản hồi theo gói) {
mAuthManager.getProfile(Pro mớifileNgười nghe());} - Thực hiện onSuccessfor của bạn Chuyên nghiệpfileNgười nghe.
onThành công hai nhiệm vụ chính: để truy xuất profile dữ liệu từ Gói phản hồi và chuyển dữ liệu đến giao diện người dùng. cập nhậtProfiledữ liệu một chức năng giả định mà ứng dụng của bạn có thể triển khai để hiển thị chuyên nghiệpfile chi tiết. setLoggedInState, một chức năng giả định khác, sẽ chỉ ra rằng người dùng đã đăng nhập và cung cấp cho họ phương tiện thoát ra.
Để lấy chuyên nghiệpfile dữ liệu từ Gói, chúng tôi sử dụng tên được lưu trữ bởi Hằng số xác thực lớp học. Các onSuccess gói chứa profile dữ liệu trong BUNDLE_KEY.PROFILE bó.
Trong giới chuyên nghiệpfile gói, dữ liệu phạm vi được lập chỉ mục theo CHUYÊN NGHIỆPFILE_KEY.NAME, CHUYÊN NGHIỆPFILE_KEY.EMAIL, CHUYÊN NGHIỆPFILE_KEY.USER_ID, Và CHUYÊN NGHIỆPFILE_KEY.POSTAL_CODE. CHUYÊN NGHIỆPFILE_KEY.POSTAL_CODE chỉ được bao gồm nếu bạn yêu cầu mã bưu chính phạm vi.@Ghi đè
public void onSuccess(Phản hồi theo gói) {
// Lấy dữ liệu chúng ta cần từ Bundle Bundle profileGói = phản hồi.getBundle(
AuthzConstants.BUNDLE_KEY.PROFILE.val);
Tên chuỗi = profileBundle.getString(
AutzConstants.PROFILE_KEY.NAME.val);
Chuỗi email = chuyên nghiệpfileBundle.getString(
AutzConstants.PROFILE_KEY.EMAIL.val);
Tài khoản chuỗi = chuyên nghiệpfileBundle.getString(
AutzConstants.PROFILE_KEY.USER_ID.val);
Chuỗi zipcode = profileBundle.getString(
AutzConstants.PROFILE_KEY.POSTAL_CODE.val);
runOnUiThread(new Runnable() { @Override
công khai void run() {
cập nhậtProfileDữ liệu (tên, email, tài khoản, mã zip);
}
});
} - Thực hiện trênLỗi cho bạn Chuyên nghiệpfileNgười nghe.
trênLỗi bao gồm một Lỗi xác thực đối tượng chứa thông tin chi tiết về lỗi./* Đã xảy ra lỗi trong quá trình cố gắng lấy bản profile. */ @Ghi đè
public void onError (AuthError ae) {
/* Thử lại hoặc thông báo lỗi cho người dùng */
} - Thực hiện onErrorfor của bạn Ủy quyềnListener.
/* Đã xảy ra lỗi trong quá trình cấp phép ứng dụng.
*/
@Ghi đè
public void onError (AuthError ae) {
/ * Thông báo cho người dùng về lỗi * /
} - Thực hiện onCancelfor của bạn Ủy quyềnListener.
Bởi vì quy trình ủy quyền hiển thị màn hình đăng nhập (và có thể là màn hình chấp thuận) cho người dùng trong web trình duyệt (hoặc một webview), người dùng sẽ có cơ hội hủy đăng nhập hoặc điều hướng khỏi web trang. Nếu họ hủy bỏ quá trình đăng nhập một cách rõ ràng, trênHủy được gọi là. Nếu như trênCancelis được gọi, bạn sẽ muốn đặt lại giao diện người dùng của mình./* Việc ủy quyền đã bị hủy trước khi nó có thể được hoàn thành. */
@Ghi đè
public void onCancel(Gói nguyên nhân) {
/* đặt lại giao diện người dùng về trạng thái sẵn sàng đăng nhập */
}Ghi chú: Nếu người dùng điều hướng khỏi màn hình đăng nhập trong trình duyệt hoặc web view và chuyển trở lại ứng dụng của bạn, SDK sẽ không phát hiện ra rằng quá trình đăng nhập chưa hoàn tất. Nếu bạn phát hiện hoạt động của người dùng trong ứng dụng của mình trước khi quá trình đăng nhập hoàn tất, bạn có thể cho rằng họ đã điều hướng khỏi trình duyệt và phản ứng tương ứng.
Kiểm tra Đăng nhập của Người dùng khi Khởi động
Nếu người dùng đăng nhập vào ứng dụng của bạn, đóng ứng dụng và khởi động lại ứng dụng sau, ứng dụng vẫn được phép truy xuất dữ liệu. Người dùng không được đăng xuất tự động. Khi khởi động, bạn có thể hiển thị người dùng đã đăng nhập nếu ứng dụng của bạn vẫn được cấp phép. Phần này giải thích cách sử dụng getToken để xem ứng dụng có còn được cấp phép hay không.
- Tạo một TokenListener.
Trình nghe mã thông báo thực hiện Trình nghe API giao diện và sẽ xử lý kết quả của lệnh gọi getToken. Trình nghe API chứa hai phương pháp: onSuccess Và trênLỗi (nó không hỗ trợ trênHủy bởi vì không có cách nào để hủy bỏ một Nhận được mã thông báo gọi). onSuccess nhận được một đối tượng Bundle với dữ liệu mã thông báo, trong khi trênLỗi nhận được một Lỗi xác thực đối tượng với thông tin về lỗi.lớp riêng TokenListener triển khai APIListener{ /* getToken đã hoàn tất thành công. */ @Ghi đè
public void onSuccess(Phản hồi theo gói) {
}
/* Đã xảy ra lỗi trong quá trình lấy mã thông báo. */ @Ghi đè
public void onError (AuthError ae) {
}
} - Trong băt đâu phương thức Hoạt động của bạn, hãy gọi Nhận được mã thông báo để xem liệu ứng dụng có còn được ủy quyền hay không.
Nhận được mã thông báo truy xuất mã thông báo truy cập thô mà Trình quản lý ủy quyền của Amazon sử dụng để tiếp cận chuyên gia khách hàngfile. Nếu giá trị mã thông báo không phải là rỗng thì ứng dụng vẫn được cấp phép và lệnh gọi tới getProfile nên thành công. getTokenyêu cầu phạm vi giống như bạn đã yêu cầu trong cuộc gọi của bạn để ủy quyền.
hỗ trợ getToken cuộc gọi không đồng bộ theo cách tương tự như getProfile, do đó bạn không phải chặn chuỗi giao diện người dùng hoặc tạo chuỗi công việc của riêng mình. Để gọi getToken một cách không đồng bộ, hãy truyền một đối tượng hỗ trợ Trình nghe API giao diện làm tham số cuối cùng.@Ghi đè
khoảng trống được bảo vệ trênStart(){
super.onStart
();mAuthManager.getToken(Chuỗi mới []{“profile","mã bưu điện"},
mới
TokenListener());
} - Thực hiện onSuccess cho bạn TokenListener.
onThành công hai nhiệm vụ: truy xuất mã thông báo từ Gói và nếu mã thông báo hợp lệ, hãy gọi getProfile.
Để truy xuất dữ liệu mã thông báo từ Gói, chúng tôi sử dụng tên được lưu trữ bởi Hằng số xác thực lớp học. Các onSuccess gói chứa dữ liệu mã thông báo ở giá trị BUNDLE_KEY.TOKEN. Nếu giá trị đó không phải là null thì giá trị cũ nàyample gọi getProfile sử dụng cùng một trình nghe mà bạn đã khai báo ở phần trước (xem bước 7 và 8)./* getToken đã hoàn tất thành công. */
@Ghi đè
public void onSuccess(Phản hồi theo gói) {
Chuỗi cuối cùng authzToken =
phản hồi.getString(AuthzConstants.BUNDLE_KEY.TOKEN.val);
if (!TextUtils.isEmpty(authzToken))
{
// Truy xuất profile dữ liệu
mAuthManager.getProfile(Pro mớifileNgười nghe());
}
}
Phương thức clearAuthorizationState sẽ xóa dữ liệu ủy quyền của người dùng khỏi kho dữ liệu cục bộ AmazonAuthorizationManager. Người dùng sẽ phải đăng nhập lại để ứng dụng truy xuất profile dữ liệu. Sử dụng phương pháp này để đăng xuất người dùng hoặc để khắc phục sự cố đăng nhập trong ứng dụng.
- Thực hiện đăng xuất
Khi người dùng đã đăng nhập thành công, bạn nên cung cấp cơ chế đăng xuất để họ có thể xóa chuyên nghiệp của mìnhfile dữ liệu và phạm vi được ủy quyền trước đó. Cơ chế của bạn có thể là một siêu liên kết hoặc một mục menu. Đối với người yêu cũ nàyampchúng ta sẽ tạo ra một trênClick phương pháp cho một nút. - Trong trình xử lý đăng xuất của bạn, hãy gọi ClearAuthorizationState. rõ ràngTrạng thái ủy quyền sẽ xóa dữ liệu ủy quyền của người dùng (mã thông báo truy cập, profile) từ cửa hàng địa phương. rõ ràngỦy quyềnStatetakes không có tham số ngoại trừ một Trình nghe API để trả lại thành công hoặc
- Khai báo ẩn danh Trình nghe API.
Các lớp ẩn danh là một sự thay thế hữu ích cho việc khai báo một lớp mới để triển khai Trình nghe API. Nhìn thấy Xử lý Nút Đăng nhập và Nhận Profile Dữ liệu (tr. 17) cho một exampchết tiệt khai báo các lớp người nghe. - Thực hiện onSuccess bên trong Trình nghe API
Khi ClearAuthorizationState thành công, bạn nên cập nhật giao diện người dùng của mình để xóa các tham chiếu đến người dùng và cung cấp cơ chế đăng nhập mà người dùng có thể sử dụng để đăng nhập lại. - Thực hiện trênLỗi bên trong Trình nghe API.
If ClearAuthorizationStatereturns lỗi, bạn có thể cho phép người dùng thử đăng xuất lại.@Ghi đè
được bảo vệ void onCreate(Gói savedInstanceState) {
super.onCreate (saveInstanceState);
/ * Đã bỏ qua các khai báo onCreate trước đó * /
// Tìm nút có ID đăng xuất và thiết lập trình xử lý nhấp chuột
mLogoutButton = (Nút) tìmViewById(R.id.logout);
mLogoutButton.setOnClickListener(OnClickListener mới() {
@Ghi đè
public void onClick (View v) {
mAuthManager.clearAuthorizationState(mới
APIListener() {
@Ghi đè
public void onSuccess(Gói kết quả) {
// Đặt trạng thái đã đăng xuất trong giao diện người dùng
}
@Ghi đè
khoảng trống công khai onError (AuthError authError) {
// Ghi lại lỗi
}
});
}
});
}
Một số Trình quản lý ủy quyền của Amazon các phương thức trả về một đối tượng Future. Điều này cho phép bạn gọi phương thức một cách đồng bộ thay vì truyền một trình nghe làm tham số. Nếu bạn sử dụng đối tượng Tương lai, bạn không nên sử dụng nó trên chuỗi giao diện người dùng. Nếu bạn chặn một chuỗi giao diện người dùng trong hơn năm giây, bạn sẽ nhận được lời nhắc ANR (Ứng dụng không phản hồi). Trong phần Xử lý nút đăng nhập và nhận Profile Dữ liệu cũample, cái onSuccess phương pháp cho ủy quyềnListener được gọi với một luồng công nhân được tạo bởi AmazonAuthorizationManager. Điều này có nghĩa là an toàn khi sử dụng chuỗi đó để gọi getPirofile một cách đồng bộ. Để thực hiện cuộc gọi đồng bộ, hãy gán giá trị trả về từ getPirofile đến một đối tượng Tương lai và gọi phương pháp giet trên đối tượng đó để đợi cho đến khi phương thức hoàn thành.
Tương lai.get trả về một đối tượng Bundle có chứa một FUTURE_TYPE giá trị của THÀNH CÔNG, LỖI, or HỦY BỎ. Nếu phương pháp thành công, gói tương tự sẽ chứa PROFILEGiá trị _KEY dành cho người chuyên nghiệpfile dữ liệu. Dành cho người yêu cũamplê:
/ * Việc cấp phép đã hoàn tất thành công. * / @Ghi đè public void onSuccess(Phản hồi theo gói) { Tương lai<Bundle> tương lai = mAuthManager.getProfile(vô giá trị); Bundle result = Future.get();// Tìm hiểu xem cuộc gọi có thành công hay không và truy xuất profile Đối tượng Future_type = result.get(AuthzConstants.BUNDLE_KEY.FUTURE.val); if (future_type == AuthzConstants.FUTURE_TYPE.SUCCESS) { Tên chuỗi = result.getString( AuthzConstants.PROFILE_KEY.NAME.val); Chuỗi email = result.getString( AuthzConstants.PROFILE_KEY.EMAIL.val); Tài khoản chuỗi = result.getString( AuthzConstants.PROFILE_KEY.USER_ID.val); Mã zip chuỗi = result.getString( AuthzConstants.PROFILE_KEY.POSTAL_CODE.val); runOnUiThread(new Runnable() { @Override public void run() { updateProfileDữ liệu (tên, email, tài khoản, Mã Bưu Chính); } }); } khác nếu (future_type == AuthzConstants.FUTURE_TYPE.ERROR) { // Lấy đối tượng lỗi AuthError authError = AuthError.extractError(result); /* Sử dụng authError để chẩn đoán lỗi */ } |
Đăng nhập bằng Hướng dẫn bắt đầu của Amazon dành cho Android – Tải xuống [đã tối ưu hóa]
Đăng nhập bằng Hướng dẫn bắt đầu của Amazon dành cho Android – Tải về