Tôi đang xây dựng một ứng dụng, sẽ hỗ trợ cho facebook. Tôi đã tải về facebook API và mẫu của họ được gọi là "Hackbook" từ bản gốc Git repos. Vấn đề là đăng nhập - nếu ứng dụng FB ban đầu không được cài đặt trên điện thoại, đăng nhập sẽ thông qua hộp thoại tùy chỉnh và mọi thứ hoạt động, nhưng nếu ứng dụng FB được cài đặt, Hackbook sẽ tự động chuyển hướng đến ứng dụng FB ban đầu và sau đó không có gì xảy ra. Không thể đăng nhập. Tôi đã thử nghiệm điều này trên năm điện thoại khác nhau và luôn là vấn đề tương tự.Đăng nhập Facebook API không thành công với ứng dụng FB được cài đặt trên điện thoại
Trả lời
Tôi gặp sự cố tương tự. Trong trường hợp của tôi, tôi đã không tạo ra một khóa băm bằng cách sử dụng phím ký của tôi. Tôi vừa tạo khóa băm được tạo bằng cách sử dụng phím ký kết mặc định debug.keystore.
Ngay sau khi tôi tạo khóa băm bằng cách sử dụng khóa ký phát hành ứng dụng của tôi, vấn đề đó đã được sắp xếp. Nếu bạn chưa làm điều này, hãy tạo một khóa băm mới bằng cách sử dụng khóa ký tên của bạn (để tải lên trên thị trường) và thêm nó vào bảng điều khiển facebook của ứng dụng của bạn.
Hy vọng điều này sẽ hữu ích.
Tôi đã làm việc vất vả trong hai ngày & có những giải pháp cuối cùng, đây là WRONG cách để có được chìa khóa băm -
keytool -exportcert -alias *<your _alias_name>* -keystore *<key_store_path>* | [openssl_bin_directory]\openssl sha1 -binary | [openssl_bin_directory]\openssl base64
Các đúng cách là gõ 3 dòng này, một ở một thời gian trong cmd. Sau dòng đầu tiên, bạn sẽ được yêu cầu chèn mật khẩu kho khóa.
keytool -exportcert -alias *<your _alias_name>* -keystore *<key_store_path>* > [openssl_bin_directory]\debug.txt
[openssl_bin_directory]\openssl sha1 -binary [openssl_bin_directory]\debug.txt > [openssl_bin_directory]\debug_sha.txt
[openssl_bin_directory]\openssl base64 -in [openssl_bin_directory]\debug_sha.txt > [openssl_bin_directory]\debug_base64.txt
Nếu bạn muốn biết chi tiết, các QUYỀN cách được mô tả ở đây -
hay đây
Giúp bạn có được băm chìa khóa sử dụng chức năng này cho cả hai (gỡ lỗi và phát hành apk) và đặt nó trong ứng dụng của bạn trong developer.facebook.com/a pps
private void calculateHashKey(String yourPackageName) {
try {
PackageInfo info = getPackageManager().getPackageInfo(
yourPackageName,
PackageManager.GET_SIGNATURES);
for (Signature signature : info.signatures) {
MessageDigest md = MessageDigest.getInstance("SHA");
md.update(signature.toByteArray());
Log.d("KeyHash:",
Base64.encodeToString(md.digest(), Base64.DEFAULT));
}
} catch (NameNotFoundException e) {
e.printStackTrace();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
}
này giúp tôi rất nhiều .. Hy vọng điều này sẽ giúp bạn quá ..
Tôi đã cố định vấn đề này. Sau khi nhận được băm khóa bằng cách sử dụng keytool -exportcert -alias <RELEASE_KEY_ALIAS> -keystore <RELEASE_KEY_PATH> | openssl sha1 -binary | openssl base64
Tôi đã đăng nhập lần đầu tiên ở chế độ phát hành thành công ... Sau đó, lần thứ hai tôi gặp lỗi phổ biến Khóa của bạn "*********real*key************"
không khớp với các khóa được cho phép được chỉ định trong cài đặt ứng dụng của bạn.
Chỉ cần sử dụng số "*********real*key************"
mà Facebook cung cấp trong thông báo lỗi Tôi đã đăng nhập thành công ngay trong chế độ phát hành. Vì vậy, hãy chắc chắn trong khi nhập phím này mà bạn sử dụng cùng một khóa chính xác. LETTERS I, small(L) i.e (l)
sẽ khiến bạn gặp rắc rối. Tôi đã tạo hai khóa, trong khóa đầu tiên tôi đã sử dụng small(L) i.e (l)
và trong khóa thứ hai tôi đã sử dụng I. và đặt các khóa này trong ứng dụng dành cho nhà phát triển.
Hiện tại, điện thoại đang hoạt động ....
Đó là vấn đề chính xác trong trường hợp của tôi .. giải pháp duy nhất đã hoạt động! và phần nhỏ 'L' là chính xác, và cũng lớn 'tôi' (có thể trông giống như chữ 'L' nhỏ trong một số phông chữ .. –
Trong trường hợp của tôi, sự cố đăng nhập người dùng bị hủy khi ứng dụng facebook được cài đặt trên thiết bị ngay cả sau khi tạo phím phải.
Tôi đã thêm dòng sau trước khi đăng nhập và nó hoạt động tốt.
LoginManager.getInstance().logOut();
- 1. Facebook Unity SDK trên Android - Đăng nhập không thành công khi FB App cài đặt
- 2. Đăng nhập bằng facebook trên Android không hoạt động với ứng dụng Facebook đã cài đặt
- 3. Ứng dụng Chưa được cài đặt trong điện thoại
- 4. Bài đăng trên Facebook trên Android không hoạt động khi ứng dụng Facebook đã được cài đặt trên thiết bị
- 5. Facebook: Màn hình trống trên FB Đăng nhập
- 6. FB không được xác định trong Facebook Đăng nhập
- 7. Hộp thoại đăng bài trên facebook trống rỗng
- 8. tham số url đăng ký không thành công cho fb: nút đăng nhập nếu oauth 2.0 được bật
- 9. Hộp thoại Đăng nhập Facebook không hoạt động trên trình mô phỏng iOS6
- 10. Nhận số điện thoại di động từ facebook api
- 11. Hiển thị nút đăng nhập Facebook (kết nối) trong chrome không thành công
- 12. Không nhận được email từ facebook API khi đăng nhập
- 13. Trang web di động Facebook Đăng nhập bằng ứng dụng Facebook để biết chi tiết đăng nhập
- 14. Facebook vấn đề đăng nhập hộp thoại
- 15. .jar tệp không được cài đặt trên điện thoại di động samsung nhưng cài đặt trên nokia
- 16. Trang web, API và Ứng dụng iPhone cho phép người dùng đăng nhập qua Facebook
- 17. Xác thực không khớp với ứng dụng Facebook được cài đặt (iOS)
- 18. Facebook: buộc người dùng đăng nhập/cài đặt ứng dụng bằng FBML
- 19. Facebook API Đăng xuất khỏi ứng dụng của tôi nhưng không phải facebook
- 20. Cách: Thay đổi tên ứng dụng dựa trên cài đặt ngôn ngữ điện thoại
- 21. Không thể khởi chạy phím tắt: Ứng dụng chưa được cài đặt trên điện thoại của bạn
- 22. Cách cài đặt tệp APK trên điện thoại Android?
- 23. Đăng nhập OAuth của Facebook Đăng nhập - access_token API trả lại "Mã ủy quyền này đã được sử dụng"
- 24. Điện thoại không được công nhận bởi ADB
- 25. Mac OS X Facebook đăng nhập thất bại - không remote_app_id lưu trữ cho ứng dụng
- 26. Đăng nhập vào facebook trong android sử dụng REST API
- 27. Facebook SDK 3.1 iOS: Xử lý đăng nhập nếu người dùng xóa ứng dụng khỏi Cài đặt Facebook
- 28. đăng nhập facebook bằng oauth không thành công trên máy chủ trực tiếp
- 29. fb: nút đăng nhập tùy chỉnh?
- 30. Làm thế nào để ngăn chặn việc khai thác dễ dàng ứng dụng APK được cài đặt trên điện thoại
Tôi đã thêm khóa băm đó vào bảng điều khiển, nhưng sự cố vẫn còn ở đây. Tôi có phải thêm khóa băm vào fb api ở đâu đó không? – virusss8
@ virusss8: Bạn không cần phải thêm hàm băm trong ứng dụng của mình. Thực hiện theo bước này và cho tôi biết kết quả. Mở tập tin lớp Util trong facebook-sdk của bạn và thay đổi 'private static boolean ENABLE_LOG = false' thành 'true'. Bây giờ hãy giữ điện thoại của bạn kết nối với PC phát triển của bạn và chạy ứng dụng được tạo bằng cách sử dụng apk đã ký và đăng nhập. Hãy mở cửa sổ DDMS và xem có tạo ra lỗi không. –
D/Facebook ủy quyền (25124): Đăng nhập không thành công: invalid_key: Phím Android không khớp. Khóa "********* real * key ************" không khớp với các khóa được cho phép được chỉ định trong cài đặt ứng dụng của bạn. Kiểm tra cài đặt ứng dụng của bạn tại http://www.facebook.com/developers nhưng tôi chưa bao giờ đặt khóa đó ở bất kỳ đâu. Chìa khóa là gì ??? – virusss8