簡體   English   中英

如何在facebook SDK 3.0中啟用日志記錄?

[英]How to enable logging in facebook SDK 3.0?

最近我試圖獲取我的使用Facebook的Android應用程序的哈希鍵。

問題是通過命令提示符的方法對我不起作用。

所以我找到了一個新的解決方案,說你可以使用facebook消息產生一條錯誤信息,它會自動給你一個哈希鍵。

他們說你應該設置私有布爾值ENABLE_LOGGING = false; 在facebook util.java類中為true。 問題是我在類中沒有看到啟用日志記錄應該去的地方。

誰能告訴我如何讓sdk打印出logcat中的日志?

要啟用日志記錄,請調用函數Settings.addLoggingBehavior(LoggingBehavior behavior)

例如,如果要顯示請求信息調用

Settings.addLoggingBehavior(LoggingBehavior.REQUESTS);

您可以檢查LoggingBehavior類以調試其他操作: https//developers.facebook.com/docs/reference/android/3.0/LoggingBehavior

根據Pascal對類似線程的評論,此方法自2012年12月起無效。因此,您必須使用commandprompt方法來獲取正確的哈希鍵。

“ENABLE_LOG cannet自2012年12月起再次改變 - Pascal Klein 2月24日凌晨3點41分”這里有一個鏈接: Android:Facebook登錄不起作用

我在命令提示符下嘗試了幾個命令,現在我終於找到了一個對我有用的命令。 我希望它也適合你。 (我使用的是x64 Windows 7)

下載此版本的openssl: openssl for x64 Windows

在C:\\目錄中創建一個名為openssl的文件夾。

解壓縮openssl文件夾中的openssl zip。

轉到keytool.exe的位置(C:\\ Program Files(x86)\\ Java ... \\ bin)

在按住shift鍵的同時,右鍵單擊bin文件夾並打開命令提示符窗口。

輸入以下內容:

keytool -exportcert -alias androiddebugkey -keystore "C:\Users\"username"\.android\debug.keystore" | "C:\openssl\bin\openssl" sha1 -binary | "C:\openssl\bin\openssl" base64 

將“username”替換為您的用戶名 。當然沒有引號)

您必須輸入密碼:android

您的哈希鍵應該出現。 (如果你在密鑰中得到'=',請不要刪除它。它的一部分是密鑰)

祝你的應用程序好運!

感謝C Abernathy發布此方法。

通常,Android庫可以使用BuildConfig.DEBUG來確定應用程序是否處於調試模式。 但是,由於Gradle中的錯誤,Android庫總是在DEBUG設置為false的情況下構建。 作為解決方法,有一個FacebookSdk.setIsDebugEnabled(boolean)方法,因此您可以直接從您的應用程序設置調試模式。 這樣可以從SDK啟用調試日志記錄。

您還可以使用FacebookSdk.addLoggingBehavior(LogginBehavior)設置日志記錄行為,以便為不同類別的消息啟用日志記錄。 請參閱Android SDK參考, LoggingBehavior

這里開始

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM