2012-03-10 40 views
13

Tôi đang tạo một ứng dụng sẽ cần người dùng tạo tài khoản. (Giống như Facebook hoặc Twitter sẽ yêu cầu bạn.)Tôi có thể sử dụng AccountManager để cho phép người dùng đăng nhập bằng tài khoản Google của họ không?

NHƯNG, vì đây là ứng dụng Android, tôi có nên để họ đăng nhập bằng Tài khoản Google của họ bằng Trình quản lý tài khoản hay một số dịch vụ khác không? Sẽ rất hữu ích nếu họ chỉ có thể đăng nhập vào tài khoản Google của họ và cài đặt của họ cũng như các tùy chọn khác sẽ được lưu vào tài khoản đó.

câu hỏi chính tóm tắt:

  1. Có thể để cho một người sử dụng chỉ cần sử dụng tài khoản Google của họ trong ứng dụng của tôi?
    • Nếu có, tôi có sử dụng Trình quản lý tài khoản để yêu cầu họ đăng nhập và lưu thông tin/cài đặt tài khoản không?
      • Các tùy chọn khác là gì?
+0

Đã có lúc ~ hack cho phép bạn yêu cầu xác thực ứng dụng Google App Engine và bằng cách sử dụng ứng dụng đó làm phụ trợ của bạn, bạn có thể nhận được số nhận dạng và/hoặc địa chỉ email được xác thực. Không chắc liệu nó có hiệu quả không, tôi nghe nói nó đã bị loại bỏ. – nmr

Trả lời

15

Vâng, bạn có thể có được người dùng để đăng nhập vào dịch vụ Google của họ bằng các thông tin Google của họ, ví dụ, tôi có một ứng dụng trên Google Task và tôi sử dụng Android lý Tài khoản để cho phép người dùng xác thực bản thân sử dụng tài khoản Google của họ trên thiết bị android (Không cần người dùng nhập mật khẩu của họ!)

có một số ví dụ thực sự tốt để giúp bạn bắt đầu:

The user has to confirm whether you can use his/her credentials to log into the google service

Các tùy chọn khác bạn có là yêu cầu người dùng nhập tên người dùng/mật khẩu của họ theo cách thủ công. Đối với điều đó, bạn phải sử dụng API xác thực của bên thứ ba (như signpost cho OAuth) để họ đăng nhập.

Trong ứng dụng/công việc của tôi, tôi cung cấp cho người dùng cả hai tùy chọn để đăng nhập, sử dụng thông tin đăng nhập android hoặc sử dụng bên thứ ba xác thực cho những người dùng muốn đăng nhập vào sử dụng một số tài khoản khác (tài khoản mà không được kích hoạt trên thiết bị đó)

Hãy cho tôi biết nếu bạn có thắc mắc

+0

Màn hình đó sẽ xuất hiện khi họ chạy ứng dụng lần đầu tiên? (Nó sẽ nói tên ứng dụng của tôi thay vì TasksSample rõ ràng) và sau đó họ sẽ vẫn đăng nhập vào ứng dụng hoặc nó hoạt động như thế nào? – Cole

+0

Yup, sẽ xuất hiện khi bạn yêu cầu quyền truy cập để sử dụng thông tin đăng nhập của người dùng trên Android. Khi bạn có quyền truy cập, bạn có thể tạo mã thông báo ủy quyền tạm thời dựa trên thông tin đăng nhập của người dùng (mà bạn không thể xem trực tiếp). Mã thông báo tạm thời này có thể được sử dụng để truy cập vào google (hoặc API khác như FB/Twitter như trường hợp có thể) API thay mặt người dùng. Khi mã thông báo hết hạn, bạn có thể làm mới mã theo chương trình để lấy lại quyền truy cập vào dịch vụ mà không cần phải hiển thị cho người dùng màn hình như vậy. – Soham

+0

có bất kỳ hướng dẫn nào có sẵn để nhận các mã thông báo như vậy cho gmail và facebook, để có thể lấy dữ liệu từ chúng không? –

0

@Soham đưa cho bạn một số liên kết rất hữu ích nhưng vì không 't sửa một lỗi chính:
AccountManager là thực thể quản lý tài khoản trên thiết bị Android của bạn - nó không liên quan gì đến tài khoản google của bạn t! bạn có thể sử dụng tài khoản google và tạo tài khoản MỚI trên thiết bị của mình bằng cách sử dụng Trình quản lý tài khoản.

Phần còn lại bạn có thể học từ các liên kết Soham cung cấp cho bạn.

1

Mặc dù đây là một sự phát triển mới, Google Plus Đăng nhập được giới thiệu như một phần của Dịch vụ của Google Play cũng có thể được sử dụng. Bạn có thể tìm thêm thông tin tại Android developers blog. Xem thực hiện ví dụ từ Banjo ứng dụng

enter image description here

Có vẻ là một hạn chế lớn - Người sử dụng cần phải có ứng dụng Google+ được cài đặt trên thiết bị để sử dụng này.

enter image description here

Ngoài ra đây là một khá tốt blog nếu ai đó quan tâm đến việc thực hiện các giải pháp.

Các vấn đề liên quan